It was just over the weekend that we reported XvMC and VDPAU may come to the ATI R600 Gallium3D driver
that would allow those with Radeon HD 2000/3000/4000/5000 series graphics cards (what's supported by R600g) to enjoy accelerated video playback using GPU shaders beyond just the limited X-Video extension. This work was being done by Christian König and today he has one hell of a surprise: it's to the point that today you can try out the code and it should work for XvMC! Yes, that's the case, I just read the email twice and am now scurrying to test out the appropriate ATI DDX and Gallium3D driver.
This support hasn't yet perfected, but the first few frames of the video playback may be buggy and on some tries the initialization will fail, but based upon the speed König is going, this is amazing progress. To try out this XvMC on ATI R600 hardware support, you need to currently build branched versions of the xf86-video-ati DDX and Christian's xvmc-r600 branch of Mesa. This XvMC support comes when building this branch with the Xorg and XvMC state trackers for Gallium3D, which should result in a libXvMCg3dvl.so.1.0 library that MPlayer should have no issues handling.
Right now only the motion compensation process with XvMC is being handled in the shaders, but there is already someone else working on doing iDCT (inverse discrete cosine transform) in shaders for Gallium3D.
Let's hope this XvMC Gallium3D state tracker support gets merged in time for Mesa 7.10
and that the R600g support also gets ironed out. Let's also hope that VA-API / VDPAU support isn't too far out. There's already five pages of comments
from this weekend's news posting about the support being worked on, so there is clearly interest in accelerated video playback, which further reinforces this year's Linux graphics survey results
To try out this newfound XvMC R600g support, read wanna try XvMC on R600 hardware?