Terminate the tearing E-mail
Monday, 13 July 2009 00:39

While setting upĀ multiple monitors with XBMC, I found that tearing became a significant problem which could not be resolved when using TwinView, but it was trvial to fix when I changed to using a Separate X Screen. XBMC provides several options for dealing with it.

  • "Vertical blank sync" is under Settings->Appearance->Screen. I found that I had to set it to Always Enabled to have any effect.
  • "Sync Playback to Display" is under Settings->Video->Player. Enabling this will cause XBMC to drop frames if your CPU can't keep up with playback. I've got this switched on, and it does work, and it can be quite annoying, especially if your CPU is really struggling. One very good workaround for performance problems is to use VDPAU, but only if you've got a recent nVidia card.

Additionally, the nVidia driver provides several options to help reduce tearing. nVidia settings can be started from the System->Administration menu. Each screen that is attached to the video card will have a separate group of settings.

  • "Sync to VBlank" in XVideo Settings. This will sync texture operations to the screen refresh. I have this switched on, though I'm not sure if it affects XBMC.
  • "Sync to VBlank" in OpenGL Settings. XBMC should pick up this setting as the default if you select "Let Driver Choose" for "Vertical blank sync" in XMBC. I have it switched on.

Don't forget to restart XBMC after you change any of these settings. Finally, despite turning all these options on, you may still find that some poorly encoded videos continue to suffer from tearing.

blog comments powered by Disqus