Tränen (kein Vsync) in Filmen (Nvidia-eigener Treiber)

18

Dies ist eher eine Frage von KDE als von Ubuntu, aber ...
ich habe sichtbare Risse auf dem Bildschirm. KDE-Komposition, Flash-Video in Firefox und einfache Spiele wie kpat werden nicht synchronisiert, aber in Steam-Spielen und Filmen ist ein ständiges Zerreißen zu beobachten. Wenn ich vsync überall ausschalte, ist das Zerreißen doppelt so deutlich, sodass nicht nur die GPU die Einstellungen ignoriert.
Was mich am meisten stört, ist, dass ich auf vielen verschiedenen Setups das gleiche Problem habe. Hat jeder dieses Problem und es interessiert niemanden?
Mein Setup

  • Kubuntu (letzte Versionen) oder OpenSuse oder Gentoo.
  • KDE 4.12 - 4.13
  • Nvidia GTX 260, 570, TITAN, verschiedene Treiberversionen.
  • Ich schaue Filme im SMplayer mit mplayer2-Backend. VLC hat das gleiche Problem.

Was habe ich versucht (und es hat nicht geholfen)

  • Ein- und Ausschalten in verschiedenen Konfigurationen der Vsync-Einstellungen in nvidia-Einstellungen und KDE Desktop-Effekten.
  • Mplayer-Ausgabe und direct rendering-Einstellungen umschalten .
  • Ausschalten des Adaptive Power-Modus in den NVIDIA-Einstellungen.
  • Compositing ausschalten
  • Ändern der Monitor-Hz
  • Ausführen von mplayer von CLI
  • Rituale und Opfer durchführen

Was hat funktioniert (ist aber keine akzeptable Lösung)

  • Deaktivieren von KDE und Ausführen von Mplayer in einer reinen X-Sitzung
  • In den Jugendstil wechseln UND Komposition ausschalten UND Video im Vollbildmodus öffnen - ohne einen Teil, der noch zerreißt.

Bitte um Rat.

UPDATE 1 Ich habe herausgefunden, dass, wenn ich zu Desktop Effects - Advanced gehe und dort irgendetwas Wertvolles ändere (OpenGL-Version, Skalierungsalgorithmus) und auf Apply drücke, das Zerreißen bis zum Neustart weg ist. Keine Einstellung löst dies jedoch ein für alle Mal. Nach dem Neustart muss ich noch einmal etwas ändern. Ich denke, es ist genug, dies auf einen Fehler zurückzuführen, nicht auf meine Fehler, also werde ich einen Fehlerbericht einreichen.

Barafu Albino
quelle

Antworten:

8

Einfache Anleitung zur Lösung dieses ärgerlichen Problems :)

  1. Erstelle Datei:

    /etc/profile.d/Tearing.sh
    
  2. Gib diesen Code ein:

    export __GL_YIELD="USLEEP"
    
  3. Dann mache es ausführbar mit:

    chmod +x /etc/profile.d/Tearing.sh
    
  4. Sobald dies erledigt ist, sudo service lightdm restart starten Sie den Computer neu oder drücken Sie Strg + Alt + F2, melden Sie sich an und führen Sie ihn aus. Oder starten Sie den Display Manager neu.

Das GL_YIELD hat bei mir funktioniert, und jetzt scheint die vertikale Synchronisierung so zu funktionieren, wie sie sollte.

( https://www.kubuntuforums.net/showthread.php?63946-No-vertical-sync-with-NVIDIA&highlight=tearing )

Dominik Najberg
quelle
Das hat super geklappt, danke! Kein Zerreißen mehr nach einem Neustart
user1003916
1
Hab den Trick auch für mich gemacht, nVidia GeForce 210 über HDMI an einen Fernseher
K0D4
8

Die Ursache des Problems waren (natürlich) fehlerhafte NVIDIA-Treiber. Die Lösung ist einfach. Umgebungsvariablen hinzufügen:

export __GL_YIELD="USLEEP"
export __GL_THREADED_OPTIMIZATIONS=1

irgendwo bevor X anfängt. Systemweit /etc/profile/funktioniert gut.

Barafu Albino
quelle
2
Dies hat in 14.04 noch 16.04 nicht geholfen
Giovanni Toraldo
5

Ich hatte es genagelt ...

Überprüfen Sie also zunächst, ob das Problem weiterhin besteht, nachdem Sie die Desktop-Effekte ausgeschaltet haben (Alt + Umschalt + F10). Ich kann garantieren, dass das Problem möglicherweise bereits behoben ist.

Gehen Sie zu den Systemeinstellungen und öffnen Sie Desktop-Effekte:

  • Skalierungsmethode auf etwas anderes als das aktuell festgelegte <- aktuelle Update

Ich weiß, dass die Optionen möglicherweise nicht genau wie oben benannt sind. Tut mir leid, aber ich verwende die polnische Version von Kubuntu.

Die obigen Schritte haben das Problem für mich behoben. Aber erst nach einer Neuinstallation. :)

BEARBEITEN: In der aktuellen Kubuntu-Version 14.04 hängt das Problem mit der Skalierungsmethode zusammen. Wenn Sie eine andere als die aktuell ausgewählte Option auswählen, wird das Problem VORÜBERGEHEND behoben.

Dominik Najberg
quelle
Ich habe alleine versucht, "Scaling Method to Smooth" einzustellen und es schien das Problem zu lösen! Aber ich werde das Wochenende warten, bevor ich die Antwort schließe. Das Zerreißen verschwand schon seit einiger Zeit und trat wieder auf, und außerdem sollte dieses "glatte" Ding keine Auswirkung auf die Filmwiedergabe haben. Seltsam. Auch gruselig, weißt du?
Barafu Albino
Es scheint also so zu sein: Wenn ich die Skalierungsmethode auf irgendetwas ändere, verschwindet der Riss. Aber nach dem Neustart ist es wieder da und ich muss es wieder auf etwas anderes ändern.
Barafu Albino
Dies hat das Problem für mich behoben. Ich denke, dass nicht alle Schritte notwendig waren, aber zusammen scheinen sie es abgedeckt zu haben und ich erhalte schöne HD-Videoleistung (in VLC) sowohl im Fenstermodus als auch im maximierten Modus. Die Kombination aus den nvidia-Einstellungen und dem Deaktivieren von Desktop-Effekten hat das Problem ebenfalls behoben, aber auf diese Weise kann ich Desktop-Effekte aktiviert lassen. Außerdem habe ich zuvor das ubuntu-eingeschränkte Extras-Paket installiert - nicht sicher, ob dies ins Spiel kam oder nicht.
Gregtczap
Und ich kann "garantieren", dass, wenn Sie Ihren Monitor ausschalten, das Problem auch "verschwunden" ist :) Kein Vergehen, aber wenn das Problem nur "verschwunden" ist, gibt es überhaupt keine Garantie. Mein Punkt ist jedenfalls, dass dies für mich und wahrscheinlich für viele andere keine akzeptable Lösung ist. Es kann jedoch hilfreich sein, wenn man nur einen Film ansehen und nicht viel Zeit damit verbringen möchte.
Tomasb
5

Ich habe alle Tricks ausprobiert und unter Ubuntu 15.04 (zusammen mit xorg-edgers und nvidia-355) nichts gelöst, bis ich auf die Seite von nvidia archlinux kam .

Testen Sie mit:

nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"

Um die Änderung dauerhaft zu machen, müssen Sie die folgende Zeile zum Abschnitt "Bildschirm" Ihrer Xorg-Konfigurationsdatei hinzufügen , z. B. in /etc/X11/xorg.conf.d/20-nvidia.conf

Option  "metamodes" "nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"
Giovanni Toraldo
quelle
Das Kopieren und Einfügen derselben Antwort auf viele Fragen ist nicht sehr gut. Sie sollten als Duplikat markiert haben, dass diese Fragen bereits beantwortet wurden. Danke :)
Mitch
Vielen Dank, ich hatte Probleme und die anderen Lösungen (wie das Setzen der Variable __GL_YIELD) funktionierten nicht. Außerdem hatte ich zuvor Probleme beim Festlegen der Xorg-Datei, aber die obige Befehlszeile funktionierte erfolgreich. Ich werde versuchen, die Befehlszeile zu meinem ~ / .x-Profil hinzuzufügen. Es ist ein Hack, aber es sollte funktionieren.
Chris
1
Kann dir nicht genug Punkte geben :-) Als Referenz bin ich auf Xubuntu 15.10 mit nvidia-355.
Marcus
1
Dies funktionierte für mich und ich bin am 14.04 :)
Neil
1
Das hat bei mir mit KDE Neon User LTE geklappt.
Tejzpr
0

Das Entfernen des NVIDIA-Treibers wurde für mich behoben. Für XFCE half nur der Austausch des Fenstermanagers.

Wasserscroll
quelle
1
Für XFCE ist es das. Bei anderen WMs ist das Entfernen des Treibers jedoch nicht erforderlich und kann die Probleme möglicherweise nicht lösen.
Barafu Albino
Es scheint mir ziemlich notwendig, weil der Fahrer patzig ist und Nouveau die vsync gibt, die ich brauche.
Waterscroll
Welchen Fenstermanager hast du stattdessen benutzt?
jarno
Compton, aber ich habe die Ursache meines Problems herausgefunden. Bei nvidia optimus und xorg ist ein Problem aufgetreten, das bei Verwendung Ihrer nvidia-Karte zu Rissen führt.
Waterscroll
Was vsync angeht, hat es geholfen, Xfwm4 von Git zu erstellen. Anweisungen finden Sie hier ). Die aktuelle Git-Version scheint jedoch einige andere Zeichnungsprobleme zu haben.
jarno
0

Ich habe alle Vorschläge ausprobiert, um zu versuchen, das Zerreißen des Bildschirms beim Ansehen von Videos in Unity, Gnome und Gnome Classic auf zwei Computern (einer mit Nvidia Titan X und der andere mit einer alten Radeon-Karte) zu beheben. Nichts hat geklappt.

Dann bemerkte ich, dass, als ich den Videoausgang in meiner VLC-Einstellung von OpenGL auf X11 umstellte, das Zerreißen verschwand, aber ich fing an, eine Menge zufälliger schwarz / weißer Quadrate oder "Rauschen" zu bekommen.

Damit die Videowiedergabe funktioniert, habe ich Lubuntu Desktop installiert, das OpenBox anstelle von OpenGL verwendet. Lubuntu ist ein Ubuntu-Derivat, auf dem standardmäßig LXDE installiert ist. Es ist extrem leicht und perfekt, um im Hintergrund zu laufen, während Sie Kodi und Steam verwenden oder nur Videos ansehen.

Während des schnellen Ziehens von Fenstern kann es zu Fensterrissen kommen. In dieser Situation ist dies jedoch unerheblich, da ich auf diesem Computer ausschließlich Kodi und Steam im Vollbildmodus verwende.

Führen Sie den folgenden Befehl aus, um sowohl Lubuntus angepasstes LXDE als auch Vanille-LXDE unter Ubuntu zu installieren:

sudo apt-get install lubuntu-desktop

Verwenden Sie stattdessen diesen Befehl, um nur Vanilla LXDE zu installieren:

sudo apt-get install lxde

Sie können LXDE auch testen, indem Sie eine Lubuntu-Live-CD herunterladen  .

Jede Umgebung unterscheidet sich nur in den Standardeinstellungen. Sie kommen mit verschiedenen Themen, Hintergrundbildern und Panel-Layouts. Beispielsweise ist der Chromium-Browser der Standard für Lubuntu, während Mozilla Firefox der Standard für Vanilla LXDE ist. Natürlich können Sie mit beiden einen beliebigen Browser verwenden. Beide verwenden den PCManFM-Dateimanager, einen einfachen Ersatz für den in GNOME enthaltenen Nautilus-Dateimanager.

Melden Sie sich nach der Installation eines der Pakete ab und wählen Sie im Anmeldebildschirm entweder die Lubuntu- oder die LXDE-Sitzung aus.

Meine Videos sahen noch nie besser aus als in Lubuntu. Ich konnte meine Frequenz auf 120 Hz erhöhen, um sie an meinen Fernseher anzupassen. Die Wiedergabe war für 1920x1080p bemerkenswert flüssig.

Rinnsal
quelle
OpenBox statt OpenGL? Sind sie für die gleiche Aufgabe?
Jarno
Nein, ich schlage vor, Sie verwenden einen Compositing-Fenstermanager wie Openbox, der OpenGL nicht verwendet. en.m.wikipedia.org/wiki/Compositing_window_manager
guttermonk
Xfce4 verwendet standardmäßig Thunar als Dateimanager, nicht PCManFM.
Jarno
Das Ausführen von LXDE hat das Zerreißen von Videos im Chromium-Browser beim Abspielen von YouTube nicht gestoppt. Ich habe Intel-Grafik und Ubuntu 14.04.
Jarno
@Jarno, XFCE war ein Tippfehler. Ich habe es bearbeitet und durch LXDE ersetzt. Haben Sie in Bezug auf das Zerreißen des Bildschirms einen anderen Browser verwendet? Haben Sie Bildschirmrisse, wenn Sie Videodateien von Ihrer Festplatte abspielen?
Guttermonk