|
|
#1 | |
|
Registered User
Join Date: Jan 2005
Posts: 20
|
Hi everyone,
when I connect an external display to my laptop computer and configure dual-head using TwinView, I get very visible image tearing artifacts when playing video on the external display. The only way to avoid this, is using mplayer's "xv" video output module and select the appropriate monitor to sync to in nvidia-settings. Unfortunately, there does not seem to be a similar "Sync to this device option:" for the vdpau video adapter (and neither for OpenGL, by the way). Is there a way to control which display device the vdpau video output syncs to, so I can get tearing-free video on an external monitor? |
|
|
|
|
|
|
#2 | |
|
Moderator
Join Date: Aug 2005
Posts: 1,327
|
Please see the README, e.g. here:
http://us.download.nvidia.com/XFree8...ausupport.html and search for the description of "VDPAU_NVIDIA_SYNC_DISPLAY_DEVICE". |
|
|
|
|
|
|
#3 | |
|
Registered User
Join Date: May 2008
Posts: 199
|
Quote:
|
|
|
|
|
|
|
#4 | |
|
Registered User
Join Date: Sep 2008
Posts: 17
|
Quote:
To the OP forget about this advice and use Windows to do your video playback. NVIDIA couldn't give a rats ass about us people who use Twinview and playback videos. |
|
|
|
|
|
|
#5 |
|
Registered User
Join Date: Oct 2008
Posts: 114
|
I have a 2 monitor setup, a CRT and a flat panel, and I have had always VDPAU_NVIDIA_SYNC_DISPLAY_DEVICE set to DFP-0 (set automatically in .bashrc), but didn't notice any effect (tearing is about 2 or 3 cm from the top of the display).
The intro of Doctor Who is specially good for spotting the tearing (it has a lot of movement). With XV it works fine. The codec is DivX which isn't supported in my card, so only "-vo vdpau" is actually in use. |
|
|
|
|
|
#6 | |
|
Registered User
Join Date: Oct 2008
Posts: 86
|
Quote:
I am asking politely if this option could be made easier to use in future :-) Sam |
|
|
|
|
|
|
#7 |
|
Registered User
Join Date: Sep 2008
Posts: 17
|
When you have wasted 3 and a half hours of your life trying to fight NVIDIA's horribly buggy and un-userfreindly graphics drivers to try and do something basic (like being able to watch a video without stupid visual glitches) there is no time for politeness
![]() |
|
|
|
|
|
#8 |
|
Moderator
Join Date: Aug 2005
Posts: 1,327
|
DeiF, are you sure your DFP is actually DFP-0 not e.g. DFP-1 etc.? Take a look at Xorg.0.log to confirm; I believe the numbering is based at least partially on physical connector, rather than the first active DFP always being DFP-0.
davelaser, I did briefly take a look at plumbing this setting through nvidia-settings, and it's certainly non-trivial. Second, it won't really solve the problem at all, since settings made by nvidia-settings don't persist across logout or reboot without manual effort that I imagine would be considered just as difficult as setting an environment variable. An xorg.conf option would be the best solution persistence-wise, but that is also manually-configured, so doesn't really help ease-of-use. |
|
|
|
|
|
#9 |
|
Registered User
Join Date: Apr 2008
Posts: 26
|
Is this setting only for twin-view or should it also be used when running two screens?
|
|
|
|
|
|
#10 |
|
Moderator
Join Date: Aug 2005
Posts: 1,327
|
When using two separate X screens, no configuration is required; VDPAU will always attempt to sync-to-vblank individually on each screen.
|
|
|
|
|
|
#11 | |
|
Registered User
Join Date: Oct 2008
Posts: 86
|
Quote:
|
|
|
|
|
|
|
#12 | ||
|
Registered User
Join Date: Jan 2005
Posts: 20
|
Quote:
Quote:
Apart from that, I wouldn't want to edit my xorg.conf and restart the X server every time I change this setting. EDIT: Setting VDPAU_NVIDIA_SYNC_DISPLAY_DEVICE to the correct value (DFP-1 in my case) seems to work nicely. I have to tearing even with a compositing manager running. Thank you very much for pointing this out. Unfortunately the nvidia README is quite lengthy and it's not easy to find what you are looking for. By the way, to find out the correct identifier for your display device simply open nvidia-settings and head to the "Display Configuration" tab. The identifiers are listed in the "Model:" drop-down box. Instead of integrating the sync option into nvidia-settings or xorg.conf wouldn't it be a good idea to make an API function for that? The video player application could set the correct value either automatically or via a user-defined setting. I think this way would be most convenient for end-users. |
||
|
|
|
![]() |
| Thread Tools | |
|
|