我运行的是 Ubuntu 16.04.06 LTS,连接了两台 1920x1080 显示器(一台通过 HDMI,另一台通过 DVI)。两台显示器都出现了严重的垂直画面撕裂现象。
有许多有用的视频可以解决单个显示器的垂直撕裂问题,但没有一个可以解决多个显示器的垂直撕裂问题:
解决方案非常相似,并且涉及使用以下配置 NVIDIA 设置:ForceFullCompositionPipeline启用。以下解决方案适用于仅限单显示器:
nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"
有人能建议如何将此修复程序同时应用于两个显示器吗?
答案1
以下是我使用两个屏幕时采取的步骤:
- 运行
xrandr
以显示监视器连接名称、分辨率和偏移量:
记下下面两行,稍后会用到
HDMI-0 connected 1920x1080+0+0
DVI-I-1 connected primary 1920x1080+1920+0
- 使用以下代码作为模板来修复屏幕撕裂:
更换屏幕名称、分辨率和偏移量根据您的配置,每个屏幕:
nvidia-settings --assign CurrentMetaMode="DVI-I-1: nvidia-auto-select @1920x1080 +1920+0 {ViewPortIn=1920x1080, ViewPortOut=1920x1080+1920+0, ForceFullCompositionPipeline=On}, HDMI-0: nvidia-auto-select @1920x1080 +0+0 {ViewPortIn=1920x1080, ViewPortOut=1920x1080+0+0, ForceFullCompositionPipeline=On}"
- 将上一个命令添加到启动应用程序偏好设置以确保修复在重启后仍然有效。
运行第二步命令后,在修复应用之前,您的屏幕可能会暂时变黑。您可能希望看这个视频测试撕裂是否已经消失。
信用这里针对已适配的双屏代码。