nV News Forums

 
 

nV News Forums (http://www.nvnews.net/vbulletin/index.php)
-   NVIDIA Linux (http://www.nvnews.net/vbulletin/forumdisplay.php?f=14)
-   -   Tearing on dual-head Twinview setup (http://www.nvnews.net/vbulletin/showthread.php?t=130196)

happyfunbot 03-17-09 04:25 PM

Tearing on dual-head Twinview setup
 
Okay, I've tried everything*, and I am still at a loss.

* means:

(1) Xv vsync in nvidia-settings, which appears to do nothing in mythtv, mplayer, or xine
(2) OpenGL vsync in nvidia-settings, which appears to do nothing in mythtv, mplayer (-vo gl and -vo gl2), or xine, and makes playback not smooth at best, and unwatchably-bursty at worst
(3) OpenGL vsync in mythtv's configuration, which appears to do nothing
(4) XvMC, which just gives me a blank screen in mythtv and then forces me to quit X, unload the nvidia module, reload it, and restart X if I want to continue testing anything, obviously the result of something getting into a bad state
(5) Upping the rtc max-user-freq to 1024
(6) I do not use compiz: I use fvwm, which I am pretty sure makes no use of OpenGL or overlays
(7) I use the qt painter in mythtv, not OpenGL

The only thing I can think of at this point is adjusting the vertical refresh to be closer to a multiple of 24 fps (maybe 50Hz? The monitors are currently running at 60Hz), but I have my doubts that this is even possible given a half hour of tinkering with the Twinview mode settings.

Is there something else I haven't tried? For that matter, has anyone figured out this problem? I've done many google searches on this subject, referencing tearing, vsync, etc., and had no luck, having only found many references to "solutions" I've already tried.

Is my attempt to eliminate tearing with Twinview simply in vain? Can I then expect a better solution if and when nvidia supports true xrandr?

Running 180.11 on Ubuntu Intrepid with an 8600 GT.

FWIW, why did I not used to have this problem a few years ago? I recall mythtv used to use a different facility (/dev/nvidia0?) to time the vertical refresh, but that appears to have vanished. Was that responsible for good performance historically? If so, why did that facility suddenly disappear from the driver?

coolphoenix 03-18-09 04:26 AM

Re: Tearing on dual-head Twinview setup
 
having the same problem with drivers up to 185.13. no way to get rid of tearing with twinview. disabling either one display and tearing vanishes on the other (mplayer -vo gl and opengl vsync in nvidia-settings.).

well, got used to it. since when i watch video i usually do not need the other display :) of course that is no real fix...

8800gts, kde4 or xfce

happyfunbot 03-18-09 09:20 AM

Re: Tearing on dual-head Twinview setup
 
If the option to Xv vsync to the monitor of my choice actually worked, this would not be a problem, because I almost always watch video on the same monitor; alas, this functionality appears to be broken.

davelaser 03-18-09 09:59 AM

Re: Tearing on dual-head Twinview setup
 
Quote:

Originally Posted by happyfunbot (Post 1961066)
If the option to Xv vsync to the monitor of my choice actually worked, this would not be a problem, because I almost always watch video on the same monitor; alas, this functionality appears to be broken.

Works perfectly for me with nvidia drivers 185.13 (and has done for as long as I can remember, probably back to the 169.xx series of drivers).

You must have compiz disabled though, xvideo sync NEVER works with compiz enabled even with only one monitor (I seriously hope this is something the nvidia devs are planning to fix very soon).

Opengl sync only ever works on one of the monitors if both are enabled. If only one is enabled, it works on that one. It would be nice to have an opengl monitor sync option like the xvideo sync option which decides which monitor to sync to.

Sam

davelaser 03-18-09 10:07 AM

Re: Tearing on dual-head Twinview setup
 
Quote:

Originally Posted by davelaser (Post 1961093)
Works perfectly for me with nvidia drivers 185.13 (and has done for as long as I can remember, probably back to the 169.xx series of drivers).

You must have compiz disabled though, xvideo sync NEVER works with compiz enabled even with only one monitor (I seriously hope this is something the nvidia devs are planning to fix very soon).

Opengl sync only ever works on one of the monitors if both are enabled. If only one is enabled, it works on that one. It would be nice to have an opengl monitor sync option like the xvideo sync option which decides which monitor to sync to.

Sam

Actually, I'm wrong. Opengl sync worked a while ago, maybe with the 180.27 driver or something like that, but with the 185.13 it seems to be broken again on dual monitors. Xv sync works fine though still, unless an opengl application is running at the same time on the other monitor, but this breaks vsync even in windows.

Sam

happyfunbot 03-18-09 10:19 AM

Re: Tearing on dual-head Twinview setup
 
Quote:

Originally Posted by davelaser (Post 1961093)
Works perfectly for me with nvidia drivers 185.13 (and has done for as long as I can remember, probably back to the 169.xx series of drivers).

Fantastic for you. ;-) This is part of the problem: not everyone has the same set of issues, compounded by different versions and nvidia's seeming lack of a regression suite in which they make sure they never release a new version with previously-resolved bugs.
Quote:

You must have compiz disabled though, xvideo sync NEVER works with compiz enabled even with only one monitor (I seriously hope this is something the nvidia devs are planning to fix very soon).
I have updated my original post to indicate that I do not use compiz. I'm using fvwm, about the most minimal window manager still being actively developed.

FWIW, is there an application that can tell me whether some other rogue application has an overlay open? Just because compiz isn't running it doesn't mean it can't be something else.

happyfunbot 03-18-09 10:24 AM

Re: Tearing on dual-head Twinview setup
 
Quote:

Originally Posted by davelaser (Post 1961093)
Opengl sync only ever works on one of the monitors if both are enabled. If only one is enabled, it works on that one. It would be nice to have an opengl monitor sync option like the xvideo sync option which decides which monitor to sync to.

This was mentioned in the README:

Quote:

11C. VBLANK SYNCING

Setting the environment variable __GL_SYNC_TO_VBLANK to a non-zero value will
force glXSwapBuffers to sync to your monitor's vertical refresh (perform a
swap only during the vertical blanking period).

When using __GL_SYNC_TO_VBLANK with TwinView, OpenGL can only sync to one of
the display devices; this may cause tearing corruption on the display device
to which OpenGL is not syncing. You can use the environment variable
__GL_SYNC_DISPLAY_DEVICE to specify to which display device OpenGL should
sync. You should set this environment variable to the name of a display
device; for example "CRT-1". Look for the line "Connected display device(s):"
in your X log file for a list of the display devices present and their names.
You may also find it useful to review Chapter 13 "Configuring Twinview" and
the section on Ensuring Identical Mode Timings in Chapter 19.
Does it not work? I have not tried.

psychok9 04-10-09 07:36 PM

Re: Tearing on dual-head Twinview setup
 
Jaunty 9.04, nVidia 180.44, 8800 GT Zotac AMP and 2 LCD display (LG PC monitor and Samsung TV HDready).
I've fixed the problem thanks to compizconfig -> general options -> Sync to vblank and my 1st monitor (obviously Vsync enabled on the nVidia panel - OpenGL and XV video output).
I still have this problem with my 2nd TV LCD (1st disabled).
Tonight I found a temporary fix. I've selected on SMPlayer the GL2 (Yuv) output. Before doing that, I had launched the "nvidia-settings -l" (ALT + F2).


All times are GMT -5. The time now is 03:01 PM.

Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.