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

AMD Releases Open-Source UVD Video Support

Fatima Sheremetyeva

Published on 2 April 2013
Written by Fatima Sheremetyeva
Page 1 of 1 - 282 Comments

Within the next few hours AMD will be publishing open-source driver code that exposes their Unified Video Decoder (UVD) engine on modern Radeon HD graphics cards. This will finally allow open-source graphics drivers to take advantage of hardware-accelerated video decoding. Read more details in this Phoronix exclusive.

For many years, AMD Linux users have wanted open-source UVD/video-acceleration support to go along with their open-source OpenGL driver. However, it never came until now -- many years after UVD first arrived back in the ATI days. The official reasoning for years was that it's complicated to get any public documentation or open-source code since documenting UVD/UVD2 in the public domain could potentially compromise the Digital Rights Management abilities of their Catalyst driver on other operating systems. Obviously it's in AMD's best business interest to cater towards the much larger Windows market where Digital Rights Management for protected video content is critical, so it's been a sticky and drawn out situation getting open-source UVD support.

AMD has said they were working on some open-source UVD solution for many months, but it was complicated getting legal clearance and frankly many Linux desktop users lost hope of seeing hardware-accelerated video playback outside of the Catalyst blob (in March of last year is when we shared that UVD was going through code review). Thus it was a very huge and welcome surprise when receiving an advance and exclusive notice from AMD a few hours ago. Alex Deucher of AMD shared with Phoronix that tomorrow (3 April, or possibly in the late hours tonight), there will be a code drop of open-source UVD Linux support.

Alex has graciously allowed Phoronix to share this information early with our readers, many of whom will be really excited now that there's finally support for offloading the video playback process to the GPU.

This UVD support will come for the Radeon HD 4000 "R700" graphics cards through the Radeon HD 7000 "Southern Islands" graphics cards. This is effectively UVD2 hardware and newer. There was the original UVD decoder found with the Radeon HD 2000 GPUs and UVD+ to come with the Radeon HD 3000 series, but this support is targetting UVD2 and beyond. The latest generation is UVD3 that was introduced with the Radeon HD 6000 series. UVD3 brought in DivX and Xvid along with Blu-ray 3D and 120Hz Stereo 3D.

This open-source AMD UVD support will allow for accelerated playback of H.264, VC-1, and MPEG variants on the HD 4000 through HD 7000 series GPUs. Interestingly, and to much pleasure, the UVD support is being exposed over VDPAU.

VDPAU, a.k.a. the Video Decode and Presentation API for Unix, was introduced by NVIDIA many years ago for bringing PureVideo support to their Linux driver. After that, AMD introduced XvBA (X-Video Bitstream Acceleration) for an API to expose UVD with the Catalyst driver under Linux. More multimedia Linux software has supported VDPAU than XvBA. XvBA adoption is almost non-existent with just a few video programs supporting the AMD API. There's also VA-API that is backed by Intel and also supported much better by Linux multimedia software than XvBA.

AMD using VDPAU to expose UVD with their open-source Linux graphics driver is a great win for Linux desktop users. There's also been the VDPAU Gallium3D state tracker, which is likely why AMD went with this using this as their video API in order to reduce their workload.

On top of the current AMD Radeon Linux graphics driver code, the UVD support requires changes to their Radeon Direct Rendering Manager driver within the Linux kernel and Mesa. The Linux kernel changes are part of this code drop and should be merged to mainline for the Linux 3.10 kernel. Alex Deucher says the Mesa changes to the Radeon Gallium3D drivers will be immediately merged to master (rather than some code branch) and thus will be part of Mesa 9.1 / Mesa 10.0 when released in several months.

Overall, this is a great day in the open-source AMD history. It's been several months without any exciting open-source AMD news (namely since the introduction of the RadeonSI driver for the HD 7000 series GPUs), but now there's finally the long-awaited open-source video playback support! Great job to all of the developers involved in bringing this much sought after support.

There's no word on any public UVD documentation being released at this time. Hopefully next though will be proper open-source Radeon driver power management, another much sought after feature by Radeon Linux desktop users with no "out of the box" dynamic re-clocking support by default.

Information regarding this imminent code drop was first shared via Michael's Twitter account hours ago. Follow @MichaelLarabel where there is often exclusive Linux tidbits and other early bits of information. [Editor's Note: Welcome a new contributor on Phoronix!]

Update: The code just arrived! There's also the Mesa patches!

Latest Linux Hardware Reviews
  1. Even With Re-Clocking, Nouveau Remains Behind NVIDIA's Proprietary Linux Driver
  2. The Power Consumption & Efficiency Of Open-Source GPU Drivers
  3. AMD R600g/RadeonSI Performance On Linux 3.16 With Mesa 10.3-devel
  4. Intel Pentium G3258 On Linux
Latest Linux Articles
  1. AMD Catalyst 14.6 Does Slightly Better With APITest OpenGL Tests
  2. Updated Source Engine Benchmarks On The Latest AMD/NVIDIA Linux Drivers
  3. Nouveau vs. Radeon vs. Intel Tests On Linux 3.16, Mesa 10.3-devel
  4. KVM Benchmarks On Ubuntu 14.10
Latest Linux News
  1. Fedora Assembles A Security Team
  2. AMD Launches The A10-7800, The 65 Watt Kaveri
  3. Builder: A New Development IDE Being Built For GNOME
  4. GDB 7.8 Betters Python Scripting, Adds Guile Support
  5. GNOME's GTK+ Is Still Striving For A Scene Graph, Canvas API
  6. Unreal Tournament Looks Great For Team Deathmatch
  7. LibreOffice 4.3 Released With Many Exciting Changes
  8. GNOME/GTK On Wayland Gains Focus At GUADEC
  9. GNOME Stakeholders Take Issue With Groupon Over their Gnome
  10. GStreamer VA-API Plug-In Update Adds New Features
Latest Forum Discussions
  1. Debian + radeonsi
  2. Grand Theft Auto Running On Direct3D Natively On Linux Shows Gallium3D Potential
  3. AMD Publishes Open-Source Linux HSA Kernel Driver
  4. Linus Torvalds On GCC 4.9: Pure & Utter Crap
  5. Open-source drivers on ATI R7 260X
  6. AMD Athlon 5350 APU On Linux
  7. Updated and Optimized Ubuntu Free Graphics Drivers
  8. List of Linux friendly Kickstarter projects