Committed to a branch of the Mesa repository over the weekend is an initial Gallium3D state tracker for providing VDPAU
support. Yes, VDPAU as in NVIDIA's Video Decode and Presentation API for Unix that has become quite popular with Linux users and is supported by many media applications.
Younes Manton is a previous Google Summer of Code student developer that had worked on an XvMC state tracker
and since was merged into the Xorg state tracker
, but to date this XvMC support isn't widely used by those already experimenting with Gallium3D drivers and X-Video Motion Compensation itself isn't as elaborate as VDPAU, XvBA, or VA-API.
While Younes is no longer a GSoC developer, he has been working on a VDPAU state tracker. Yesterday he made his initial commit of this state tracker that amounts to 639 lines of code. The VDPAU state tracker appears far from complete and is not ready to accelerate your video playback on the GPU, but according to the Git commit
it's far enough along where at least the vdpauinfo
command is working with the state tracker.
This VDPAU state tracker work is currently being done within the pipe-video branch
The Video Decode and Presentation API for Unix was launched in late 2008
by NVIDIA to replace their XvMC support and take proper advantage of their PureVideo engine found on modern GeForce graphics cards. As our tests have shown, VDPAU can allow HD video playback with very low-end hardware
. VDPAU support has been picked up by MythTV, VLC, MPlayer / FFmpeg, and many other media applications. There's also a VDPAU back-end for VA-API
that could conceivably work with this state tracker to expose VA-API in cases where the application doesn't support VDPAU.
Hopefully this VDPAU state tracker will continue to be worked on and mature at a faster rate than what we've unfortunately seen so far with the OpenCL and OpenGL 3.x state trackers.