AMD's UVD2 & XvMC For Linux?

Posted by Michael Larabel on September 04, 2008

Last month the Catalyst 8.8 Linux driver was released with CrossFire For Linux (including support for the Radeon HD 4870 X2) and OverDrive-based overclocking. In that article we also shared two new interesting libraries appeared within the driver package: libAMDXvBA.so.1.o and libXvBAW.so.1.o.

The AMDXvBA and XvBAW libraries aren't yet used by the driver, but their names are rather interesting containing Xv.

Xv, or X-Video, has been supported by the proprietary Catalyst package for some time on Linux and Textured Video is even supported by the open-source xf86-video-ati driver for most of the card generations. What hasn't been supported though in the Xv family is XvMC, or X-Video Motion Compensation. XvMC is an extension of Xv that allows for offloading some MPEG2 video decoding to the graphics processor instead of using the system's main processor.

Word though has leaked onto the Internet by some Windows web-sites that AMD intends to provide high-definition video acceleration on some select Linux-based computers using ATI graphics. With that information out there, now we're willing to talk a bit more about these two new libraries.

Specifically, AMDXvBA and XvBAW are part of their Unified Video Decoder (UVD2) plans for Linux support. You can see this by running strings /usr/lib/libAMDXvBA.so.1 | grep UVD on the Catalyst 8.8 driver or newer. Outputted are numerous references to UVD. Among the strings are CreateUVDCommand, CreateUVDBufferPool, CreateUVDConfig, RegisterUVDClient, UVDSession, "unknown UVD IDCT buffer type ovverride", and numerous other references. What will upset some users though are references to DRM, which when talking about video doesn't mean the open-source Direct Rendering Manager but instead Digital Rights Management. There are strings for SetupDrmKeys, SetupDrm, _ZN8UVDCodec10SetDrmKeysEv, etc.

In the other library, XvBAW, are numerous references to XvMC. There is XvMCSetAttribute, XvMCGetAttribute, XvMCWrapper, XvMCQueryExtension, and quite a few other Xv/XvMC strings.

With that said, it looks like not only is support for Unified Video Decoder 2 coming but also X-Video Motion Compensation support! With modern hardware, XvMC is no longer too useful, but this should satisfy a number of users after enhanced video playback.

What will be interesting though is how AMD decides to implement their high-definition video support on Linux. Seeing as there is no suitable standard right now, they will likely introduce their own interface. This then will need to be adopted by the video playback programs (such as mplayer and MythTV) in order for it to be of any benefit.

For now you'll just need to speculate on what's happening, but once such a driver is released that delivers UVD2 and XvMC support (if in fact these libAMDXvBA.so.1.o and libXvBAW.so.1.o files aren't nasty tricks) we'll provide a full run-down on the new features and comments from AMD. As we mentioned in the Catalyst 8.8 article, the fun for the year is not over yet.

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. LLVM 3.3 Officially Released
  2. LLVM/Clang Now Uses Loop Vectorizer At New Levels
  3. Intel GPU Driver Tries To Rip Out FBDEV Support
  4. Coreboot Doing AMD USB 3.0, Q35 QEMU Emulation
  5. VP9 Codec Now Enabled By Default In Chrome
  6. openSUSE 13.1 M2 Plays On PulseAudio 4.0
  7. Debian 7.1 Rounds In Some Bug-Fixes
  8. Min / Max FPS Comes To Test Results
  9. Google Pushes More Mesa / Gallium3D Patches
  10. The Phoronix Migration Is Fully Complete
  11. Linux 3.10-rc6 Kernel Brings In More Fixes
Latest Forum Talk
  1. VP9 Codec Now Enabled By Default In Chrome
  2. Google Pushes More Mesa / Gallium3D Patches
  3. Intel GPU Driver Tries To Rip Out FBDEV Support
  4. AMD Catalyst 13.6 Beta
  5. LLVM 3.3 Officially Released
  6. The Wayland Situation: Facts About X vs. Wayland
  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