• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Feineinstellung von KWIN, insbesondere Tearing

goeba

Hacker
Hallo,

ich verwende KDE 5.8 LTS sowie einen Intel-Grafikchip .

Leider bekomme ich Tearing-Effekte beim Abspielen von HD Videos.

Die Tearing-Effekte lassen sich verhindern duch:

a) Einstellen der no-tear Option im Intel-Treiber
b) Verwenden von Compton als Compositor (getestet mit icewm, xfce und auch bei abgeschaltetem Compositing in KDE)

Leider sorgen beide Lösungen unter KDE für unerwünschte Nebeneffekte (beispielsweise verschwindet dann Schrift in der Terminalemulation, aber auch bei vielen anderen Programmen treten refresh-Probleme auf).

Es scheint mir so zu sein, dass kwin hier einfach eine schlechte Performance liefert. Zugegebenermaßen ist mein System auch recht leistungsschwach, es kann HD Videos nur "gerade so" abspielen.

Meine Lösung ist aktuell, dass ich zum Arbeiten KDE verwende und nach Feierabend dann auf XFCE wechsle, das finde ich aber irgendwie unbefriedigend.

Wenn jemand Tipps zum tunen von kwin hat (oder aber, wie man mit Plasma 5.8 compton als Compositor verwendet, ohne dass unerwünschte Nebenwirkungen auftreten), dann würde ich mich freuen.

Gruß, Andreas
 
OP
G

goeba

Hacker
Hallo,

ich habe jetzt gute Ergebnisse mit

1. Im Intel-Treiber

Code:
Section "Device"                                                                                                                                                                
   Identifier  "Intel Graphics"                                                                                                                                                 
   Driver      "intel"                                                                                                                                                          
   Option      "AccelMethod"  "sna"                                                                                                                                             
#   Option      "TearFree"     "true"                                                                                                                                           
EndSection
Theoretisch sollte damit die Konfigurationsdatei überflüssig sein. Im Internet findet man aber als Tipp, die Methode "uxa" mit "TearFree" zu kombinieren. Das ist unsinn, weill TearFree nur mit sna zusammenfunktioniert. Tear Free sorgt bei mir zwar für tear-free Video, gibt im Desktop aber viele Störungen, weswegen ich es nicht (!) aktiviert habe. Insbesondere lässt sich, wenn man die Option aktiviert, in Chrome nicht mehr vernünftig scrollen (Bild springt wild).

2. Eine Zeile in /etc/environment anfügen:
Code:
COGL_ATLAS_DEFAULT_BLIT_MODE=framebuffer
(das hatte mit Tear-Free wenig zu tun, aber ich hatte Fontprobleme nach suspend / resume, das wird damit gelöst. Wer die Fontprobleme nciht hat, also erst mal weglassen)

3. Im Compositor unter "Tearing Vermeiden" die Option "nur wenn Aufwand vertretbar".
Damit arbeitet das nur im Vollbildmodus, also genau dann, wenn ich Videos schaue.

Meine Weisheiten habe ich hierher:

https://wiki.archlinux.org/index.ph...s_.28missing_glyphs_after_suspend.2Fresume.29

Ferner habe ich versucht, die Hardwarebeschleunigung zur Video-Dekodierung zu aktivieren. Dazu gibt es einen Patch für Chromium, man findet aber keine aktuelle Chromium Version, die den Patch hat (für Opensuse). Version 56 von Chromium für SuSE hatte aber diesen Patch. Wer es mal probieren möchte, installiere sich Chromium Version 56 aus den Offiziellen SuSE-Quellen. Ich habe da aber mehr Bildstörungen als mit der Software-Dekodierung.
 
OP
G

goeba

Hacker
Hallo,

ich habe jetzt ganz was anderes noch probiert.
Ich verwende die kde-openbox-session, und dort dann Compton.

Die Desktop-Effekte sind da nicht ganz so schön, aber ansonsten ist die Perfomance deutlich besser!

Ich verstehe immer noch nicht, warum man das mit KWIN nicht hinbekommt, ist das im Vergleich wirklich so schlecht? Jedenfalls mit dem Intel-Treiber?

Es gibt natürlich auch hier ein paar Haken, aber das Tearing-Problem bin ich völlig los, sowohl für den Desktop an sich als auch für Videos.
 
OP
G

goeba

Hacker
Moin nochmal,

ich bin jetzt wieder bei KWIN. Openbox + Compton blieb auch manchmal hängen.

Folgendes habe ich noch herausgefunden:

- der Intel Treiber bietet Triple-Buffering. Das wird von KWIN aber offenbar nicht zuverlässig erkannt. Daher sollte man die zugehörige Umgebungsvariable auf "forciert an" setzen
- wenn man Desktop-Effekte anschaltet, hat KDE 5.8 (5.10 auch noch, später weiß ich nicht) einen Bug, der nicht gefixt ist, und zwar diesen hier:

https://forum.kde.org/viewtopic.php?f=111&t=139299

Das lässt sich leicht beheben.

Schließlich, wenn KDE doch mal hängen bleibt, hilft meist dieser Befehl (auf einer virtuellen Konsole auszuführen, wenn KDE gar nicht mehr reagiert):

Code:
DISPLAY=:0 kwin_x11 --replace&

Ich dachte nur, dass ich das hier auch mal poste, weil ja sicherlich einige KDE Nutzer hier unterwegs sind.

Ich hoffe, dass ich im KDE Forum noch Antwort bekomme, wo und wie ich diesen Bug für die LTS Version melden kann. Screen-Freezes sind m.E. echte Showstopper (bei Windows 10 übrigens startet sich der Grafiktreiber von selbst neu, wenn er abstürzt, er reißt nicht alle Programme mit. Wenn Linux auf dem Desktop eine Chance haben will, sollte es stabiler sein als Windows, nicht instabiler).
 
OP
G

goeba

Hacker
Also, auch mit den zugefügten Symlinks friert das System noch gelegentlich ein.

Hat das Problem sonst niemand?
 
OP
G

goeba

Hacker
Mal wieder ein Update zu diesem Endlos-Problem.

Ich habe schweren Herzens das Compositing abgeschaltet. Mein Rechner ist dafür zu langsam, denn wenn der Compositor Tearing verhindern will und die Grafik mit dem Zeichnen nicht hinterherkommt, dann hat der Compositor ja keine andere Möglichkeit als auf den nächsten Frame zu warten.

Wenn man aber den Compositor abschaltet, kann man bei Intel-Karten folgende XOrg Konfiguration wählen:

Code:
# /etc/X11/xorg.conf.d/20-intel.conf

Section "Device"
   Identifier  "Intel Graphics"
   Driver      "intel"
   Option      "AccelMethod"  "sna"
   Option      "TearFree"     "true"
EndSection

So habe ich Tearing-freien Desktop + Videos, aber kein Compositing.
(Wenn man den Compositor anschaltet, sollte man, so jedenfalls meine Erfahrung, nicht die Option tearfree wählen, denn dann versuchen Compositor und Grafiktreiber beide, Tearing zu verhindern, dann verschluckt sich das Ssytem noch schlimmer).

Naja, man kann wohl nicht alles haben - ein billiges, lüfterloses Notebook, das trotzdem allen grafischen Schnickschnack mitmacht ...
 
Oben