HD Video Playback With A $20 CPU & $30 GPU On Linux

Written by Michael Larabel in Processors on 11 December 2008 at 03:00 AM EST. Page 9 of 9. 34 Comments.

NVIDIA has provided the header file for the VDPAU API along with some development documentation, but at this time, the support can only be found within NVIDIA's binary driver. It's not too likely VDPAU will find its way within AMD's proprietary Linux driver and it's unknown whether it will eventually find its way into any open-source driver. There has been talk by Intel of having XvMC (X-Video Motion Compensation) support more video standards but that hasn't amounted to anything yet nor has VA-API (Video Acceleration API), which is another Intel spawned open-source project and it aims to provide hardware acceleration for video processing.

What NVIDIA also hasn't provided is any reference or soft implementation of VDPAU that would run just atop the processor and could be used by developers in debugging VDPAU problems and allow developers of other open-source multimedia programs to test their VDPAU work without necessarily needing access to NVIDIA hardware.

To expose the video engine on newer ATI GPUs, Unified Video Decoder 2 (UVD2), AMD has been working to introduce X-Video Bitstream Acceleration on Linux. The XvBA shared library can be found starting with Catalyst 8.10, but there is no accompanying documentation, media player patches, or header file to make it usable. As we exclusively shared in our XvBA article, this new AMD video API for Linux is modeled after Microsoft's DxVA and provides GPU acceleration for iDCT, motion compensation, de-interlacing, and color correction. The formats to be initially supported by the X-Video Bitstream Acceleration are H.264, VC-1, and MPEG-2.

XvBA will not officially be introduced by AMD until at least January, which is giving NVIDIA the upper-hand in this heated Linux battle. If AMD wishes to dominate with their video acceleration method on Linux they will need to come to the table with detailed documentation and ideally already well-prepared patches for MPlayer, MythTV, and other multimedia programs. If they end up being able to release the UVD2 register documentation and other data so that open-source developers would be able to expose this hardware video engine within the open-source stack, they then could win this battle in having an open standard. Don't expect this to come too soon though since AMD is still working to release its R600 3D documentation that is currently months behind due to legal issues.

Many open-source drivers don't even support XvMC right now, but this may improve with the adoption of Gallium3D. Generic GPU Video Decoding is being worked on that uses the graphics processor's shaders in a universal way through the Gallium3D architecture, but it's not yet ready for prime-time.

We are very pleased with the results from this latest round of VDPAU testing. We were successful in playing high definition video files on Linux in multiple formats all from a $20 AMD Sempron processor and $30 NVIDIA GeForce graphics card. Though if these were encrypted video files and using say a Blu-Ray disc, this likely wouldn't be possible since the processor would have a very hard time keeping up, but anyways Linux is currently lacking such a player.

Stay tuned to Phoronix for more information on NVIDIA's VDPAU as it matures as well as details on AMD's XvBA as soon as it launches. You can share your video playback experiences under Linux in the Phoronix Forums.

For pricing information and reviews on AMD Sempron and NVIDIA GeForce graphics cards visit TestFreaks.com.

If you enjoyed this article consider joining Phoronix Premium to view this site ad-free, multi-page articles on a single page, and other benefits. PayPal or Stripe tips are also graciously accepted. Thanks for your support.


Related Articles
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.