我使用的是带有 2 个显示器的 ubuntu 18.04.02。图形适配器使用 DP 连接到 KVM 切换器,该切换器连接到 4K 显示器(称为显示器 1),该显示器仅支持 30hz 帧速率。
在启动过程中,ubuntu 将检测/激活显示器 1 的 60hz 帧/刷新率,但该显示器不支持该频率。
那么我如何将系统范围内的帧速率设置为 30hz?
我做了什么:
我在 处设置了 30hz ~/.config/monitors.xml
。但是monitors.xml
gdm3 登录后应用了 。但我无法登录,因为登录页面提供的是 60hz,导致显示空白。
在网上搜索我发现了一些通过编辑文件来改变速率的信息xorg.conf
,但这在 ubuntu 18.04 中并不存在。
有什么想法吗,我怎样才能将显示器 1 上的帧速率持续设置为 30 hz?
答案1
我刚刚在努力解决与此非常相似的问题,最后找到了解决办法。
我遇到的问题是由于在 Ubuntu 20.04 LTS 中使用专有的 nvidia 驱动程序造成的。我连接了一台较旧的 VGA 显示器(Rosewill R912E,1280x1024 原始分辨率),它错误地报告了 EDID 信息。nvidia 驱动程序尝试以 85 hz 运行,显示器在屏幕上弹出一个烦人的“输入不支持”框。登录后,手动将显示频率设置为 75 Hz 可以解决问题,但对于 GDM3 登录屏幕,我仍然会收到这个烦人的“输入不支持”框。
以下是我修复此问题的方法:
编辑 /etc/X11/xorg.conf:
找到此部分:
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Toshiba Matsushita Display Technology Co., Ltd R912E"
HorizSync 31.0 - 95.0
VertRefresh 55.0 - 85.0
Option "DPMS"
EndSection
将 VertRefresh 从“55.0 - 85.0”更改为“55.0 - 75.0”,以强制刷新率保持在 75 或更低。
本节内容如下:
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "Stereo" "0"
Option "nvidiaXineramaInfoOrder" "CRT-0"
Option "metamodes" "1280x1024_75 +0+0"
Option "SLI" "Off"
Option "MultiGPU" "Off"
Option "BaseMosaic" "off"
SubSection "Display"
Depth 24
EndSubSection
EndSection
我添加了一行:
Option "UseEdidFreqs" "false"
metamodes 行可能也很有用,但是会由 Ubuntu 上默认安装的 nvidia-settings 工具自动添加。
来源:http://http.download.nvidia.com/XFree86/Linux-x86/1.0-9626/README/appendix-d.html