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. AMD Radeon R9 290: Gallium3D vs. Catalyst Drivers
  2. AMD Radeon R9 290 Open-Source Driver Works, But Has A Ways To Go
  3. Trying The Configurable 45 Watt TDP With AMD's A10-7800 / A6-7400K
  4. Sumo's Omni Gets Reloaded
Latest Linux Articles
  1. The Most Energy Efficient Radeon GPU For AMD Linux Gaming
  2. 20-Way Radeon Comparison With Open-Source Graphics For Steam On Linux Gaming
  3. Preview: OS X 10.10 Yosemite vs. Ubuntu Linux GPU Performance
  4. Radeon Graphics Yield Mixed Results With Linux 3.17 Kernel
Latest Linux News
  1. Ubuntu's Utopic Unicorn 14.10 Beta 1 Released
  2. Genode OS 14.08 Has New GUI Architecture, Pluggable VFS
  3. Another Intel Linux Power Regression Is Being Investigated
  4. DNF Makes It A Step Closer To Replacing Yum On Fedora
  5. OS Battle: Linux Takes 1.7% Desktop Marketshare
  6. PHP 5.6 Officially Released With New Debugger
  7. LibreOffice 4.3.1 Released
  8. Re-Clocking Your NVIDIA GPU With Nouveau On Linux 3.17
  9. Radeon DRM Queues More Changes, RV6xx UVD For Linux 3.18
  10. Metro 2033 Redux Will Hopefully Hit Linux Real Soon
Latest Forum Discussions
  1. Best Radeon for a Power Mac G5?
  2. Canonical Joined The Khronos Group To Help Mir/Wayland Drivers
  3. OC capability - Intel Core i5 4690K & Biostar Hi-Fi Z97WE
  4. Updated and Optimized Ubuntu Free Graphics Drivers
  5. AMD Releases UVD Video Decode Support For R600 GPUs
  6. Announcing radeontop, a tool for viewing the GPU usage
  7. It's Now Possible To Play Netflix Natively On Linux Without Wine Plug-Ins
  8. [DB] BIOS - ACPI - data collecting