2013-06-14, 11:18
Looks like I was wrong. vsync can be disabled by the setting in xbmc. Maybe the behavior has changed since those lines have been written (not by me)
If you disable vsync, you see fps in the menu rising to 100, right?
During video playback we only render at video fps. If video gets late, it can catch up without vsync, because it can render at higher speed.
I always run with vsync on and don't see any improvement when switching it off. As long as you don't observe drops/skips when running with vsync, I have no explanation why this should not as smooth as running without.
Code:
#ifdef TARGET_POSIX
// for nvidia cards - vsync currently ALWAYS enabled.
// the reason is that after screen has been setup changing this env var will make no difference.
setenv("__GL_SYNC_TO_VBLANK", "1", 0);
setenv("__GL_YIELD", "USLEEP", 0);
#endif
If you disable vsync, you see fps in the menu rising to 100, right?
During video playback we only render at video fps. If video gets late, it can catch up without vsync, because it can render at higher speed.
I always run with vsync on and don't see any improvement when switching it off. As long as you don't observe drops/skips when running with vsync, I have no explanation why this should not as smooth as running without.