AMD Opens Up XvBA! Their Catalyst Linux Video API

Posted by Michael Larabel on February 25, 2011

Back in 2008 we were the first to thoroughly talk about AMD's X-Video Bitstream Acceleration (XvBA) API found in their Catalyst Linux driver to expose their UVD2 video engine now under non-Windows operating systems. However, when the XvBA library was made available, it was next to useless since they hadn't published the documentation or any header files describing this video playback acceleration interface. A year later, in November of 2009, AMD and Splitted Desktop Systems released a VA-API front-end to XvBA so that VA-API multi-media applications could seamlessly use XvBA with the Catalyst driver.

However, in the year and couple months since the VA-API to XvBA library around, this AMD Linux video acceleration API hasn't been too favorable. It's often buggy in particular driver releases and is just not as good as NVIDIA's Video Decode and Presentation API for Unix (VDPAU), which pre-dates AMD's Linux video work. However, we have heard that AMD is working on a new video driver implementation whereby VA-API would be exposed directly.

Coming as a shock right now though is that AMD has finally opened up the X-Video Bitstream Acceleration interface. They have released an XvBA SDK (with a header file), sample code, and a sample library.

At developer.amd.com is a link to the XvBA documentation / header file. They have also setup an XvBA SourceForge page, complete with mailing list.

The code includes xvbainfo, for reporting XvBA capabilities, and xvba trace as a tracing library of XvBA API calls. There's also xvbaplay as a sample media player using the Universal Video Decoder.

Before anyone starts wondering, this won't do much good for those hoping to see AMD's UVD2 engine supported by the open-source Radeon graphics drivers. Video decoding/encoding still is not supported there since AMD cannot publicly document their video engine at this time without potentially compromising the Digital Rights Management for other platforms. What this XvBA SDK package does is basically allow application developers to interface with this UVD API directly rather than targeting VA-API.

This may have been interesting if AMD had provided this support from the beginning, but now it's too late and there are already two leaders in the field: VA-API and VDPAU. AMD is now wanting open-source developers to target XvBA as a third video acceleration API. This though doesn't make too much sense since there is still the VA-API wrapper library and all indications are AMD will be exposing VA-API directly from their driver later in the year. XvBA isn't also supported on any hardware or drivers outside of Catalyst driver on UVD2-capable GPUs. Ah well, at least their still behind their open-source strategy and that the XvBA interface is now available for those interested.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Intel Haswell HD Graphics 4600 vs. AMD Radeon Graphics On Linux
  2. Intel Haswell HD Graphics 4600 Performance On Ubuntu Linux
  3. Intel Core i7 4770K "Haswell" Benchmarks On Ubuntu Linux
  4. The First Experience Of Intel Haswell On Linux
Latest Software Articles
  1. Optimized Binaries Provide Great Benefits For Intel Haswell
  2. 11-Way Linux, BSD Platform Comparison
  3. SNA Acceleration Works Great For Intel Core i7 Haswell
  4. The Linux Evolution For Intel Haswell's Performance
Latest Linux News
  1. KDE's KWin Made Lots Of Progress In 4.11
  2. Ubuntu Announces Carrier Advisory Group
  3. Qt 5.1 Release Candidate 1 Has Arrived
  4. In-Fighting Continues Over Mir On Non-Unity Ubuntu
  5. Subversion 1.8 Presents New Features
  6. LLVM 3.3 Officially Released
  7. LLVM/Clang Now Uses Loop Vectorizer At New Levels
  8. Intel GPU Driver Tries To Rip Out FBDEV Support
  9. Coreboot Doing AMD USB 3.0, Q35 QEMU Emulation
  10. VP9 Codec Now Enabled By Default In Chrome
  11. openSUSE 13.1 M2 Plays On PulseAudio 4.0
Latest Forum Talk
  1. Ubuntu Announces Carrier Advisory Group
  2. In-Fighting Continues Over Mir On Non-Unity Ubuntu
  3. Vote for GOG to add Linux versions of games they...
  4. Intel Haswell HD Graphics 4600 vs. AMD Radeon...
  5. Intel GPU Driver Tries To Rip Out FBDEV Support
  6. Mir Still Causing Concerns By Ubuntu Derivatives
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite