我有这个问题似乎困扰着许多使用专有 Nvidia 驱动程序的人:
视频撕裂:当视频中有大量平移或动作时,细水平线(通常在显示器顶部附近)。
(注意:切换回默认的 nouveau 驱动程序不是一种选择,因为它看似不存在的电源管理会以几倍的速度消耗我的电池)
我已经尝试过 Totem、Parole 和 VLC,并且所有这些都发生了撕裂。最好的结果是X11 output在 VLC 中使用,但仍然有撕裂,动作相对温和。
硬件: MacBook Air 3,2——配备 Nvidia GeForce 320M。
使用 Nvidia 道具驱动程序撕裂有两种常见的修复方法:
关闭 compositing,因为 Nvidia 专有驱动程序通常不适合在 Linux 上使用合成窗口管理器(我知道 Compiz 是一个例外)。但是我使用了一个非常轻量级的窗口管理器(很棒的窗口管理器),它甚至不能合成(或任何很酷的效果)。我在 Xfce 中也有这个问题,在那里我禁用了合成。
启用同步到 VBlank。 为了实现这一点,我设置了该选项nvidia-settings,然后像nvidia-settings -l其他自动启动程序一样自动启动它。这似乎有效,因为当我运行时glxgears,我得到:
$ glxgears
Running synchronized to the vertical refresh. The framerate should be
approximately the same as the monitor refresh rate.
303 frames in 5.0 seconds = 60.500 FPS
300 frames in 5.0 …Run Code Online (Sandbox Code Playgroud)我真的希望这里有人可以提供帮助,因为我非常接近放弃并重新使用 Windows。我有一个带有 i7-4710MQ 2.5 GHz、Intel HD 4000(我很确定)集成显卡和 GeForce GTX 970M/PCle/SSE2 专用显卡的 MSI GT70 Dominator。我从 Ubuntu 14.04.3 的库存安装开始,我尝试过的每个程序都有可怕的屏幕撕裂,从 Chrome 到 Minecraft 再到 L4D2。我正在使用专有的 Nvidia 驱动程序(来自 nvidia-346 的 346.82 版),因为我听说它们获得了最佳性能。通过屏幕撕裂,我的意思是好像 vsync 关闭了 - 当有东西移动时,你可以看到帧关闭的水平线。
我尝试转到 Nvidia X 服务器设置以打开“同步到 VBlank”,但问题仍然存在。
我也尝试安装 Bumblebee,但是当使用 optirun 命令打开浏览器并转到 Youtube 视频时,屏幕撕裂仍然存在。
我也试过去 usr/share/lightdm/lightdm.conf.d 并编辑 5-xserver-command.conf 以获得 -bs 选项。
在 reddit 的一些建议之后,我升级到 15.04,但这没有用。
我尝试将我的 Nvidia 电源设置设置为高,但没有运气。
我试过 Compton 和 Compiz,都没有深蹲。
在 nvidia 设置中,X 服务器显示配置中,“布局”中没有显示屏幕,X 屏幕 0 是“模型”中唯一可以选择的,每当我尝试保存到 X 配置文件时,它都会显示“无法生成X配置文件!”
我试过这个链接,nada。
每次尝试修复后我都重新启动。我真的很想使用 Ubuntu,但如果这种屏幕撕裂持续存在,我可能只需要回到 Windows,这太让人分心了。拜托,拜托,请帮帮我。任何人都可以提供的任何帮助将不胜感激,谢谢!
这更像是 KDE 而非 Ubuntu 问题,但是……
我在屏幕上看到了明显的撕裂。KDE 合成、Firefox 中的 Flash 视频以及 kpat 等简单游戏是垂直同步的,但在 Steam 游戏和电影中,却有明显的持续撕裂。如果我在任何地方都关闭 vsync,撕裂会加倍明显,所以不仅仅是 GPU 忽略了设置。
最让我烦恼的是我在许多不同的设置上都遇到了同样的问题。是不是每个人都有这个问题,没人关心?
我的设置
我尝试了什么(但没有帮助)
direct rendering设置。什么有效(但不是可接受的解决方案)
请指教。
更新 1我发现如果我去桌面效果——高级并改变任何有价值的东西(OpenGL 版本,缩放算法)并按下应用,撕裂就会消失,直到重新启动。但是,没有任何设置可以一劳永逸地解决这个问题。重启后我必须再次更改一些东西。我想这足以归咎于错误,而不是我的错误,所以我会提交错误报告。
所以我最近切换到 Ubuntu 18.04。LTS 和我经常出现画面撕裂现象,尤其是在 YouTube 等视频播放期间。有人可以帮我解决这个问题吗?请注意,我对 Linux 完全陌生。
在 Ubuntu 11.10 x64 中观看视频时我有轻微的屏幕撕裂,真的很烦人。在 Unity 和 GNOME-Shell 中。请关注 GS 的答案,因为它是我的主要 DE,也是我希望它工作的地方。
这是我使用的:
我猜是因为我无法让屏幕垂直同步,但我不知道如何解决。我发现了一个讨论 driconf 的线程,我已经将那里的设置设置为“始终垂直同步”。我还能做些什么来解决这个问题?
请帮忙,欢迎提供任何答案:) 如果我不能在我的新笔记本电脑上舒适地观看视频,那就太糟糕了。
更新:
我认为这可能与屏幕刷新率有关,所以我尝试手动更改。我找到了我的笔记本电脑 (DELL LATITUDE E5420) 的在线文档:
在那里我发现屏幕刷新率为 60 Hz,但我不知道如何在 GNOME-Shell 中手动更改它,因此我尝试在 Unity 中更改 compiz 设置以查看是否有任何区别。我仍然有这个问题,但我认为它没有那么严重,很难说。
更新 2:
该问题也存在于 Unity 2D 和 Gnome-classic 中。所以这个问题可能仅限于显示设置或驱动程序问题?
更新 3:
GNOME-Shell 的解决方案在已接受答案的评论中。
我使用 Xubuntu 13.10 并安装了 Intel Graphics Installer。我这样做是为了减少早期使用 VESA 驱动程序的屏幕撕裂量。但是当我这样做时,我将“无泪”视为禁用:
cat /var/log/Xorg.0.log
Run Code Online (Sandbox Code Playgroud)
我可以看到无泪被禁用。我正在排队:
[ 1718.525] (**) intel(0): "Tear free" disabled
Run Code Online (Sandbox Code Playgroud)
如何启用无撕裂?我有 945GM 图形驱动程序。任何形式的帮助表示赞赏。
我在 18.04 中出现了严重的屏幕撕裂问题。配置贴在下面。我不知道如何解决这个问题,因为我已经用谷歌搜索了好几次,似乎没有太多关于 18.04 的信息。预先感谢您的回答。
ubuntu@ubuntu:/etc$ inxi -F
System: Host: ubuntu Kernel: 4.15.0-20-generic x86_64 bits: 64 Desktop: Gnome 3.28.1 Distro: Ubuntu 18.04 LTS
Machine: Device: laptop System: HP product: HP ProBook 640 G2 serial: N/A
Mobo: HP model: 80FD v: KBC Version 22.64 serial: N/A UEFI: HP v: N76 Ver. 01.06 date: 11/01/2016
Battery BAT0: charge: 17.9 Wh 42.8% condition: 41.9/41.9 Wh (100%)
CPU: Dual core Intel Core i5-6200U (-MT-MCP-) cache: 3072 KB
clock speeds: max: 2800 MHz 1: 1292 …Run Code Online (Sandbox Code Playgroud) 所以大约一周前,我终于开始整理我的分区后安装了 Ubuntu。一切都很顺利,只是我在全屏显示的任何东西上都出现了屏幕撕裂现象。我四处搜索并尝试了大量不同的解决方案,但没有一个奏效。我的 GFX 卡是 nVidia GT 650M,我希望有人有解决方案。
在配备 Intel HD 4000 显卡的华硕笔记本电脑上运行 Ubuntu 14.04。问题仅在 Netflix 中。只有在我全屏显示时,屏幕撕裂才会持续。窗口模式工作正常。在 VLC 中运行电影很好,没有撕裂。我使用的是 Google Chrome 版本 40.0.2214.111(64 位)。
我应该如何进行?
就像标题说的那样,我想不出一种方法来强制我的笔记本电脑使用 PRIME 同步,据我所知,这很可能是我在观看视频时出现大量屏幕撕裂的原因。
我已经尝试了几乎所有我能找到的最近的东西,但没有任何效果。
我已经确保正确配置了 drm 文件:
(base) alex@alex:/etc/modprobe.d$ cat nvidia-drm.conf
options nvidia-drm modeset=1
Run Code Online (Sandbox Code Playgroud)
我试图强制它,xrandr --output eDP-1-1 --set "PRIME Synchronization" 1但它保持在 0。
我确保执行以下命令并重新启动:
(base) alex@alex:/etc/modprobe.d$ sudo update-initramfs -u
[sudo] password for alex:
update-initramfs: Generating /boot/initrd.img-5.3.0-24-generic
I: The initramfs will attempt to resume from /dev/nvme0n1p4
I: (UUID=4ef37681-250c-4d75-954b-c8cf78fd5e65)
I: Set the RESUME variable to override this.
Run Code Online (Sandbox Code Playgroud)
*当我尝试同样的事情但通过创建一个 zz-nvidia-modesetconf 文件时,就像我在一些帖子中读到的那样,update-initramfs 命令产生了很多错误。
毕竟,我仍然得到以下结果:
(base) alex@alex:/etc/modprobe.d$ sudo cat /sys/module/nvidia_drm/parameters/modeset
N
Run Code Online (Sandbox Code Playgroud)
我有一台带有 GTX 1050 ti 卡的戴尔 xps 9570,我正在运行 Ubuntu 19.10。
这里还有一些输出可以提供帮助(我的显示器是 eDP-1-1):
base) alex@alex:/etc/modprobe.d$ …Run Code Online (Sandbox Code Playgroud)