1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

There May Still Be Hope For R600g Supporting XvMC, VDPAU

AMD

Published on 22 October 2010 04:50 PM EDT
Written by Michael Larabel in AMD
77 Comments

When looking at our 2010 Linux Graphics Survey results, the second most popular technology sought after by Linux desktop users was video playback acceleration. This isn't surprising considering only with NVIDIA's proprietary driver using VDPAU on modern GeForce hardware can you get a decent experience or with select Intel chipsets supporting VA-API. With everything else, you're pretty much limited to nothing or the not-too-useful X-Video. There's also cases like with the ATI Catalyst driver providing XvBA support, but that's often buggy and rubbish, the same goes with the Intel Poulsbo blobs and their VA-API support.

Video playback on Linux especially with the open-source drivers have long struggled considering the workload and there being no surplus of X.Org / Mesa developers. Open-source Linux GPU drivers are still living with OpenGL 2.1 or less where as the rest of the world is living with OpenGL 3.x and even OpenGL 4.x.

With open-source video playback acceleration there's also the struggle with the GPU vendors providing documentation or code in this area that could potentially compromise their GPU's DRM (Digital Rights Management) capabilities on other platforms. AMD, for example, will not publish code or documentation concerning their UVD (Unified Video Decoder) found on R600 ASICs and later as their DRM is closely tied-in. It also looks like things haven't changed with the third-generation UVD processor found on the just-released Radeon HD 6800 series. AMD and open-source video playback continues to be a matter talked about within our forums in ATI, please release an Open UVD API and recently within ATI Evergreen 3D Code May Soon Go Into Gallium3D, among other threads.

With the open-source ATI Radeon driver there is basically X-Video support and that's it. Within the Gallium3D world for all drivers there was work going on two summers ago of generic GPU video decoding using shaders, but still it's not widely usable and the work was primarily focused with the Nouveau Gallium3D driver. There's also been some work on XvMC within the X.Org state tracker for Gallium3D, but again that's unfinished and it's still only X-Video Motion Compensation, which is only a step above X-Video.

At the beginning of this year there was an AMD developer looking into XvMC for the Radeon R300 Gallium3D driver, but that too is unfinished and the developer (Cooper Yuan) ended up being moved within AMD to work on other unrelated work.

To much surprise, it looks like some of this work may be revived. Christian König has written to mesa-dev talking about his planned adventure in bringing XvMC and VDPAU to the R600 Gallium3D driver, which is the newer Gallium3D driver supporting the ATI Radeon HD 2000/3000/4000/5000 series graphics cards.

In doing so, Christian would need to merge Mesa's pipe-video branch to master, which contains the previous R300 XvMC work, and then hacking away at R600g. It may end up being shader-based rather than taking proper advantage of the ATI UVD, but at least it's a step in the right direction. "And now I simply have to say that I'm deeply impressed by the cool design of your XvMC driver and Galium3D in general. It simply works great!!!"

Not too much information was provided at this point by Christian König, but it sounds promising. For those who don't recognize the name, Christian is the independent developer who was the one that was first to write HDMI audio support to the RadeonHD driver and later ported his HDMI audio to the ATI KMS driver, before any AMD or Novell employee managed to write the code for this feature.

Hopefully this work will come to fruition and be finished off unlike earlier attempts. For those not familiar with the Linux video APIs and extensions, XvMC is capable of offloading the video decoding of motion compensation and iDCT work to the GPU for MPEG-2 video files. VDPAU supports motion compensation, iDCT, VLD, and deblocking, but for many more formats. The supported VDPAU formats include up through MPEG-1, MPEG-2, MPEG-4 ASP, H.264 / AVC, VC-1, and WMV9, but some video hardware is not capable of supporting all formats.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. MSI X99S SLI PLUS On Linux
  2. NVIDIA GeForce GTX 970 Offers Great Linux Performance
  3. CompuLab Intense-PC2: An Excellent, Fanless, Mini PC Powered By Intel's i7 Haswell
  4. From The Atom 330 To Haswell ULT: Intel Linux Performance Benchmarks
Latest Linux Articles
  1. Open-Source Radeon 2D Performance Is Better With Ubuntu 14.10
  2. RunAbove: A POWER8 Compute Cloud With Offerings Up To 176 Threads
  3. 6-Way Ubuntu 14.10 Linux Desktop Benchmarks
  4. Ubuntu 14.10 XMir System Compositor Benchmarks
Latest Linux News
  1. Dead Island GOTY Now Available On Linux/SteamOS
  2. Ubuntu 14.04 In The Power8 Cloud From RunAbove
  3. KDE With Theoretical Client-Side Decorations, Windows 10 Influence
  4. Sandusky Lee: Great Cabinets For Storing All Your Computer Gear
  5. Fedora 21 Beta & Final Release Slip Further
  6. Mesa 10.3.2 Has A Couple Bug-Fixes
  7. RadeonSI/R600g HyperZ Support Gets Turned Back On
  8. openSUSE Factory & Tumbleweed Are Merging
  9. More Fedora Delays: Fedora 21 Beta Slips
  10. Mono Brings C# To The Unreal Engine 4
Latest Forum Discussions
  1. Users/Developers Threatening Fork Of Debian GNU/Linux
  2. Updated and Optimized Ubuntu Free Graphics Drivers
  3. HOPE: The Ease Of Python With The Speed Of C++
  4. Use Ubuntu MATE 14.10 Make it an official distro.
  5. Debian Is Back To Discussing Init Systems, Freedom of Choice
  6. AMD Radeon VDPAU Video Performance With Gallium3D
  7. Ubuntu 16.04 Might Be The Distribution's Last 32-Bit Release
  8. Linux hacker compares Solaris kernel code: