首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将屏幕刷新率降至60 my?

如何将屏幕刷新率降至60 my?
EN

Unix & Linux用户
提问于 2021-12-02 04:10:56
回答 1查看 4K关注 0票数 1

我正在我的联想军团5笔记本电脑上运行Pop!_OS 21.04 (Nvidia)。我想把屏幕刷新率从通常的144降到60 to。我能够在Windows上的中做到这一点,但是,我似乎不能在Linux上这样做。跑步显示,我唯一的选择是144赫兹。

代码语言:javascript
复制
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*+

我尝试过的

事物:

  • 显示并将速率更改为60 is,但是下拉菜单上的唯一选项是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 (RRAddOutputMode)失败请求的序列号: 39当前输出流中的序列号: 40

(数字取自cvt 1920 1080 60的输出)。

我现在没有想法了,我尝试了我在网上找到的所有解决方案,但都没有奏效。有人能帮我降低显示器的刷新率吗?

EN

回答 1

Unix & Linux用户

发布于 2022-01-07 17:55:56

经过几天的尝试,我终于通过修改EDID在我的军团5上找到了一个解决方案。如果您不知道,显示器的EDID是图形驱动程序访问的内容,以确定支持什么视频模式。

EDID定义了像刷新速率和像素时钟这样的值,但是它也报告了支持的特定视频模式。我发现xrandr和都只能使用显式定义的模式,并且拒绝所有其他模式,甚至那些有效的模式。我就是这么绕过这件事的。

  1. 打开Nvidia X服务器设置,并在GPU 0下选择左边的内置显示。右下角有一个“收购伊迪德.”按钮。单击它可以获得一个EDID.bin文件(它只是显示的EDID的转储)。
  2. 不知何故,您需要将该文件发送到Windows,因为您将使用自定义解析实用程序对其进行修改。打开CRU,点击“导入”按钮。您应该在右上框中看到至少一个“详细模式”,具有所需的分辨率和本机刷新速率。高亮显示并单击“Edit.”,并写下所有未被灰度化的值,而不更改任何值。
  3. 仍然在CRU,增加一个新的“详细”决议。将所有值设置为与在预先存在的模式中找到的值完全相同的值,但将刷新速率更改为您想要的值(60 it )。
  4. 单击CRU右下角的“导出”,并使用“60edid.bin”这样的简单名称保存它。
  5. 将该文件返回到Linux上,并将其存储在方便的地方。在我的例子中,我将它保存在/home/my_name/.60edid.bin中。
  6. 打开xorg.conf,并向它添加以下内容(我使用"DP-4“作为连接器名称,但根据xrandr将其切换到机器上的任何位置):
代码语言:javascript
复制
Section "Device"

...

Option "CustomEDID" "DP-4:/path/to/60edid.bin"

Option "IgnoreEDID" "false"

Option "UseEDID"    "true"

...

EndSection
  1. 保存xorg.conf并重新启动。打开Nvidia X Server Settings,选择您的显示器,并将分辨率更改为1920x1080。现在应该可以使用60 as作为刷新频率选项。选择后一定要点击“保存到X配置文件”!

请注意,即使做了所有这些,它仍然是不持久的。为了使它持久,我创建了下面的脚本,并将它作为后台进程在我的.profile中调用(例如。. myscript.sh &):

代码语言:javascript
复制
sleep 3s
xrandr --output DP-4 --mode 1920x1080 --rate 60
票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/679852

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档