저는 Lenovo Legion 5 노트북에서 Pop!_OS 21.04(Nvidia)를 실행하고 있습니다. 화면 주사율을 평소 144에서 60hz로 낮추고 싶습니다. Windows에서는 디스플레이 설정에서 이 작업을 수행할 수 있지만 Linux에서는 수행할 수 없는 것 같습니다. xrandr을 실행하면 유일한 옵션은 144Hz입니다.
jeff@pop-os:~/.local/share/applications$ xrandr
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
DP-0 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 disconnected (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DP-4 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 381mm x 214mm
1920x1080 144.00*+
내가 시도한 것들:
"디스플레이"로 이동하여 속도를 60hz로 변경하지만 드롭다운 메뉴의 유일한 옵션은 144입니다.
BIOS에 들어가 새로 고침 빈도를 변경해 보았지만 그렇게 할 수 있는 옵션이 없었습니다.
Windows에서 새로 고침 빈도를 수동으로 설정한 다음 Linux로 다시 부팅했지만 Linux에서는 새로 고침 빈도가 항상 144로 고정됩니다.
실행
xrandr -r 60
및 기타 변경 사항도 있지만Rate 60.00 Hz not available for this size
Windows에서 이 작업을 수행할 수 있음에도 불구하고 항상 표시됩니다.실행 중이지만
xrandr --output DP-4 --mode 1920x1080 --refresh 60
출력이 없으며 아무것도 변경되지 않은 것 같습니다.편집
~/.config/monitors.xml
중이지만 파일이 내 시스템에 존재하지 않습니다.x 구성을 저장하고
/etc/X11/xorg.conf
주사율을 60으로 변경했는데 별 효과가 없는 것 같습니다.사용자 정의 해상도 + 화면 주사율을 추가하기 위해 다음을 수행합니다.
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
그러나 다음과 같은 결과가 나타납니다.X 실패 요청 오류: BADMATCH 실패 요청의 주요 작동 코드(잘못된 매개변수 속성): 140(RANDR) 실패 요청에 대한 실패 요청: 18(RRADDDOUTPUTMODE) 시퀀스 번호: 출력 스트림의 현재 일련 번호: 39 출력 스트림 : 39 출력 스트림: 39 출력 스트림: 39 출력 스트림: 39 출력 스트림: 39 출력 스트림: 39 출력 스트림: 39 출력 스트림: 39 출력 스트림 시퀀스 번호: 40
(이 숫자는 의 출력에서 가져옵니다 cvt 1920 1080 60
).
이제 아이디어가 부족합니다. 온라인에서 찾은 모든 솔루션을 시도했지만 그 중 아무 것도 작동하지 않았습니다. 모니터 새로 고침 빈도를 줄이는 데 도움을 줄 수 있는 사람이 있습니까?
답변1
며칠 간의 노력 끝에 마침내 EDID를 수정하여 Legion 5에서 해결책을 찾았습니다. 모르는 경우 그래픽 드라이버는 모니터의 EDID에 액세스하여 지원되는 비디오 모드를 확인합니다.
EDID는 새로 고침 빈도 범위 및 픽셀 클럭과 같은 값을 정의하지만 지원되는 특정 비디오 모드도 보고합니다. 나는 xrandr과 Nvidia X 서버 설정 모두 명시적으로 정의된 모드만 사용할 수 있고 다른 모든 모드, 심지어 유효한 모드도 거부할 수 있다는 것을 발견했습니다. 이것이 내가 이 문제를 해결한 방법입니다.
- Nvidia X Server 설정을 열고 왼쪽 GPU 0에서 내장 모니터를 선택합니다. 오른쪽 하단에 "Get Edit..." 버튼이 있습니다. EDID.bin 파일(모니터의 EDID 덤프)을 얻으려면 이 버튼을 클릭하십시오.
- 다음을 사용하여 파일을 수정하므로 어떻게든 해당 파일을 Windows로 전송해야 합니다.사용자 정의 해상도 유틸리티. CRU를 열고 "가져오기" 버튼을 클릭하세요. 오른쪽 상단 상자에 원하는 해상도와 기본 새로 고침 빈도가 포함된 "상세 모드"가 하나 이상 표시되어야 합니다. 강조 표시하고 "편집..."을 클릭한 다음 기록해 두세요.모두회색으로 표시되지 않은 값은 어떤 값도 변경하지 않습니다.
- 여전히 CRU에 새로운 '상세' 해상도를 추가합니다. 놓다모두에 대한 값은 기존 모드에서 찾은 값과 정확히 동일하지만 새로 고침 빈도를 원하는 값(60hz)으로 변경합니다.
- CRU 오른쪽 하단에 있는 "내보내기"를 클릭하고 간단한 이름(예: "60edid.bin")으로 저장합니다.
- 파일을 Linux로 반환하고 편리한 곳에 저장합니다. 제 경우에는
/home/my_name/.60edid.bin
. - 을 열고
xorg.conf
다음을 추가합니다(커넥터 이름으로 "DP-4"를 사용했지만 xrandr에 따라 컴퓨터에 있는 이름으로 전환했습니다).
Section "Device"
...
Option "CustomEDID" "DP-4:/path/to/60edid.bin"
Option "IgnoreEDID" "false"
Option "UseEDID" "true"
...
EndSection
- 저장
xorg.conf
하고 다시 시작하세요. Nvidia X Server 설정을 열고 모니터를 선택한 후 해상도를 1920x1080으로 변경합니다. 이제 새로 고침 빈도 옵션으로 60hz를 사용할 수 있습니다. 선택 후 반드시 "X 프로필에 저장"을 클릭하세요!
이 모든 작업을 수행한 후에도 여전히 내구성이 없습니다. 이를 지속적으로 만들기 위해 다음 스크립트를 생성하고 이를 .profile에서 백그라운드 프로세스로 호출했습니다(예 . myscript.sh &
: ).
sleep 3s
xrandr --output DP-4 --mode 1920x1080 --rate 60