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

Mplayer, FFmpeg Gain VA-API Support

Michael Larabel

Published on 24 December 2008
Written by Michael Larabel
Page 1 of 1 - 20 Comments

Video acceleration APIs for Linux has been a hot topic recently with NVIDIA having introduced VDPAU last month (the Video Decode and Presentation API for Unix) that brings PureVideo-like features to Linux with great results while it's already finding its way into MPlayer, FFmpeg, MythTV, Xine, and VLC. AMD has been working hard on XvBA (X-Video Bitstream Acceleration), but that has yet to be officially introduced. In the open-source realm there has been talk of extending XvMC to support video formats besides MPEG-2, but that hasn't yet amounted to anything. Today though another video API is now on scene with VA-API finally being implemented in MPlayer and FFmpeg.

VA-API (short for Video Acceleration API) is a software API that has the backing of Intel and is designed to accelerate video decoding, sub-picture blending, and rendering on the graphics processor. The hopes with VA-API are to ultimately replace X-Video Motion Compensation as being the predominate video API for Linux systems. Unlike XvMC that is limited to MPEG-2 and IDCT / Motion Compensation, VA-API is designed to support other standards such as MPEG-4 and VC-1 along with accelerating IDCT, Motion Compensation, VLC, bitstream processing, spatial-temporal deinterlacing, inverse quantization, and other functions.

The Video Acceleration API has gone through several revisions this year and last year, but it has yet to see any wide adoption. The libVa library provides the VA-API implementation and is put out under an open-source MIT license while the only driver implementing VA-API support is the Poulsbo video driver. The Intel Poulsbo graphics driver is closed-source while their DRM kernel driver is open-source. Poulsbo is the code-name for Intel's MID (Mobile Internet Device) chipset that is used in conjunction with the Silverthorne Atom processors. However, the Poulsbo chipset is used on very few netbooks and the MIDs with these chipsets are not very common (at least not in the US). One system that does use this chipset is the Dell Inspiron Mini 12.

If you happen to have hardware with the Intel Poulsbo and Intel's closed-source driver, patches for adding VA-API support to MPlayer and FFmpeg have just been published. The Ubuntu Mobile team and Intel's Moblin project have been working to add VA-API support within the Helix media player stack, but now it's here for the widely popular MPlayer.

The VA-API patches aren't coming out of Intel, but instead out of Splitted-Desktop Systems, which is a company specializing in Internet media stations, VoIP, HDTV, and other products. These patches allow for VA-API support within MPlayer and FFmpeg for MPEG-2, MPEG-4 ASP (DivX), and MPEG-4 AVC (H.264) codecs. Some of the caveats though in this initial support include non-accelerated decoding is not supported with the VA-API renderer, the MPlayer OSD (On-Screen Display) isn't supported, VC-1 streams aren't yet implemented, and there is a H.264 issue that may cause some visual defects when watching streams with VA-API.

If you want to check out these MPlayer and FFmpeg patches for VA-API until they enter the mainline code-base for these two projects, they can be found at Splitted-Desktop.com. The patch that implements this support is about 3,500 lines of code.

This is good news for those with Intel Poulsbo MIDs, but that is a very small audience right now. Poulsbo should begin appearing in more systems next year, but hopefully next year we will also see the Video Acceleration API find its way into other X.Org graphics drivers or all GPU vendors and drivers settle on one API for Linux.

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. Intel Launches The Core i7 5960X, Mighty Powerful Haswell-E CPUs
  2. AMD Radeon R9 290: Gallium3D vs. Catalyst Drivers
  3. AMD Radeon R9 290 Open-Source Driver Works, But Has A Ways To Go
  4. Trying The Configurable 45 Watt TDP With AMD's A10-7800 / A6-7400K
Latest Linux Articles
  1. The Fastest NVIDIA GPUs For Open-Source Nouveau With Steam Linux Gaming
  2. Testing For The Latest Linux Kernel Power Regression
  3. The Most Energy Efficient Radeon GPU For AMD Linux Gaming
  4. 20-Way Radeon Comparison With Open-Source Graphics For Steam On Linux Gaming
Latest Linux News
  1. Getting Involved With The New Raspberry Pi Graphics Driver
  2. A New AMD Catalyst Linux Driver Unofficially Surfaces
  3. LibreOffice Ported To 64-bit ARM (AArch64)
  4. Enlightenment E19 RC3 Shows Off The New Wayland Compositor
  5. Metro Redux Is Going To Require OpenGL 4.x On Linux
  6. Jailhouse v0.1 Released As A Basic Hypervisor For Linux
  7. Google's Chromebook "Samus" Now Supported By Coreboot
  8. Chrome 38 Now In Beta With Exciting Advancements
  9. Ubuntu's Utopic Unicorn 14.10 Beta 1 Released
  10. Genode OS 14.08 Has New GUI Architecture, Pluggable VFS
Latest Forum Discussions
  1. Catalyst 14.201.1008
  2. Btrfs Gets Talked Up, Googler Encourages You To Try Btrfs
  3. It's Now Possible To Play Netflix Natively On Linux Without Wine Plug-Ins
  4. Users defect to Linux as OpenBSD removes Lynx from base system
  5. Updated and Optimized Ubuntu Free Graphics Drivers
  6. Canonical Joined The Khronos Group To Help Mir/Wayland Drivers
  7. Radeon HD5670 and Ubuntu 14.04
  8. AMD Releases UVD Video Decode Support For R600 GPUs