2010-05-24, 11:24
Distro: Gentoo amd64 stable
XBMC: SVN r30341 (from xbmc-9999.ebuild)
Kernel: 2.6.33
xorg-server:1.7.6
xorg-x11: 7.4-r1
Driver: xf86-video-ati-6.12.6
Log: http://pastebin.com/JbNtzw5J
I have an ATi Xpress 200M video card and I use the radeon driver. When watching video in XBMC I get a reasonable amount of horizontal tearing, enough to be noticeable when there is any significant sideways movement in the video. I see it equally in low-quality and up to 720p video (I can't play 1080p video at all, but that's because the hardware isn't capable). I cannot produce the same problem in MPlayer or in VLC (with video output set as xv or x11 in mplayer).
One would think that the solution to this is to enable VSync in xbmc, however if I do this xbmc hangs. Well, not hangs per se, just takes a very long time to respond to a keyboard press to navigate the menus (and turn vsync off again). If it has a hard time rendering menus in this state, you can imagine how it struggles with video.
Here's a log with me attempting to enable vsync: http://pastebin.com/VcYKaNwv
I'm thinking this is the relevant line for that problem:
What appears to be the same thing happens when I try to run MPlayer using the gl video output:
vsync appears to be enabled at a driver level. Or at least xvattr reports that it is for xv video output. Which would explain why I don't get vsync issues using mplayer.
Simple question: Is there a way to essentially pass '-vo xv' to xbmc?
Painful question: If not, is there any way I can fix my gl output, short of buying an actual graphics card (and a machine to put it in, this being a laptop) that better supports it?
Otherwise it looks like I'm stuck using plain mplayer, and just using xbmc to keep track of what I have and haven't watched.
XBMC: SVN r30341 (from xbmc-9999.ebuild)
Kernel: 2.6.33
xorg-server:1.7.6
xorg-x11: 7.4-r1
Driver: xf86-video-ati-6.12.6
Log: http://pastebin.com/JbNtzw5J
I have an ATi Xpress 200M video card and I use the radeon driver. When watching video in XBMC I get a reasonable amount of horizontal tearing, enough to be noticeable when there is any significant sideways movement in the video. I see it equally in low-quality and up to 720p video (I can't play 1080p video at all, but that's because the hardware isn't capable). I cannot produce the same problem in MPlayer or in VLC (with video output set as xv or x11 in mplayer).
One would think that the solution to this is to enable VSync in xbmc, however if I do this xbmc hangs. Well, not hangs per se, just takes a very long time to respond to a keyboard press to navigate the menus (and turn vsync off again). If it has a hard time rendering menus in this state, you can imagine how it struggles with video.
Here's a log with me attempting to enable vsync: http://pastebin.com/VcYKaNwv
I'm thinking this is the relevant line for that problem:
Code:
ERROR: PresentRenderImpl - glXWaitVideoSyncSGI - Returned error
What appears to be the same thing happens when I try to run MPlayer using the gl video output:
Code:
do_wait: drmWaitVBlank returned -1, IRQs don't seem to be working correctly.
Try adjusting the vblank_mode configuration parameter.
vsync appears to be enabled at a driver level. Or at least xvattr reports that it is for xv video output. Which would explain why I don't get vsync issues using mplayer.
Code:
Found Xv 2.2
XV_VSYNC = 1
Simple question: Is there a way to essentially pass '-vo xv' to xbmc?
Painful question: If not, is there any way I can fix my gl output, short of buying an actual graphics card (and a machine to put it in, this being a laptop) that better supports it?
Otherwise it looks like I'm stuck using plain mplayer, and just using xbmc to keep track of what I have and haven't watched.