Tearing bei Video-Wiedergabe (NVidia-Treiber)

06/04/2008 - 23:06 von Sebastian Kaps | Report spam
Hi!

Ich habe eine GeForce 8800GT, die ich unter X.org mit dem aktuellen
NVidia-Treiber betreibe. Bei der Wiedergabe von Videos (Fullscreen)
beobachte ich unabhàngig vom Player ziemliches Tearing.

In dem "NVidia X Server Settings"-Tool habe ich Sync to VBlank schon
eingeschaltet, aber ich kann da keinen Unterschied erkennen.

In der xorg.conf ist die Karte folgendermaßen konfiguriert:
,-
| Section "Device"
| Identifier "8800GT"
| Driver "nvidia"
| Option "NvAGP" "1"
| Option "NoLogo" "1"
| Option "RenderAccel" "1"
| Option "NoFlip" "0"
| Option "AllowDDCCI" "1"
| Option "HWCursor" "1"
| Option "UseEDIDFreqs" "1"
| Option "UseEDID" "1"
| Option "TwinView" "0"
| Option "TripleBuffer" "1"
| Option "UseEvents" "1"
| Option "ConnectToACPId" "0"
| Option "AllowGLXWithComposite" "1"
| EndSection
`-

Hat jemand eine Idee, wo ich noch dran drehen kann?

Ciao, Sebastian
 

Lesen sie die antworten

#1 Andreas Dehmel
07/04/2008 - 22:13 | Warnen spam
On Sun, 06 Apr 2008 23:06:09 +0200, Sebastian Kaps wrote:

Hi!

Ich habe eine GeForce 8800GT, die ich unter X.org mit dem aktuellen
NVidia-Treiber betreibe. Bei der Wiedergabe von Videos (Fullscreen)
beobachte ich unabhàngig vom Player ziemliches Tearing.

In dem "NVidia X Server Settings"-Tool habe ich Sync to VBlank schon
eingeschaltet, aber ich kann da keinen Unterschied erkennen.



Soweit ich mich erinnern kann, funktioniert die Sync-to-VBlank Option nur
in OpenGL. Die meisten Player verwenden aber per Default eher sowas wie
xv und damit funktioniert der VSync grundsàtzlich nicht (zumindest
mein Stand von vor ca. 18 Monaten, als ich mich mal intensiver damit
beschàftigt habe). Also als Ausgabegeràt OpenGL verwenden (z.B. mit
mplayer -vo gl2), dann sollte es auch klappen (allerdings verursacht
OpenGL etwas mehr CPU-Last). Beim Sync ist im Fall mehrerer Bildschirme
noch zu beachten, daß auf den richtigen synchronisiert wird. Ich habe
das nie über die NVIDIA-Settings gemacht, sondern per Umgebungsvariable
in einem Wrapper-Skript für mplayer (export __GL_SYNC_TO_VBLANK=1;
export __GL_SYNC_DISPLAY_DEVICE="DFP-0"; mplayer [...] -- für dein
Device entspr. anzupassen, siehe /usr/share/doc/NVIDIA*).



Andreas
Dr. Andreas Dehmel Ceterum censeo
FLIPME() Microsoft esse delendam
http://www.zarquon.homepage.t-online.de (Cato the Much Younger)

Ähnliche fragen