Ubuntu / Linux news and application reviews.

VA-API is an open source library/API which enables hardware accelerated video processing. It uses the GPU to accelerate video processing in order to offload the CPU.

Supported hardware includes Intel HD Graphics and G45 chipsets and newer as well as AMD Radeon GPUs (there's also a Nvidia VDPAU backend for VA-API). You can find a list of supported hardware, drivers and video codecs HERE.

Here's an example: on my laptop (Ubuntu), the CPU usage is around 40-50% when watching an 1080p H.264 video using MPlayer without VA-API and around 2-5% when watching the same 1080p video using MPlayer with VA-API. You can see some screenshots below:

mplayer without vaapi
CPU usage: MPlayer without VA-API

mplayer vaapi
CPU usage: MPlayer with VA-API

Install Intel / AMD VA-API drivers in Ubuntu

Before installing MPlayer with VA-API support, install the VA-API drivers:

- for Intel GPUs (for Intel HD Graphics as well as G45 and later):
sudo apt-get install i965-va-driver

- for AMD Radeon GPUs (you also need the proprietary drivers!):
sudo apt-get install xvba-va-driver

The Intel VA-API driver is available in the official Ubuntu 12.04 Precise Pangolin (and newer) repositories.

Nvidia users: MPlayer supports VDPAU by default so everything you need for hardware accelerated video decoding is already in the repositories. See THIS old post for more info (unless something has changed, but I can't test it since I have Nvidia Optimus and Bumblebee doesn't support VDPAU). You can also use the "vdpau-va-driver" driver which is a VDPAU-based backend for VA-API and follow use the instructions below to install Mplayer with VA-API.

Install MPlayer with VA-API support in Ubuntu

By default, the MPlayer version available in the official Ubuntu repositories doesn't support VA-API, but you can use a PPA which provides custom MPlayer builds with VA-API support.

To install MPlayer with VA-API support in Ubuntu 13.10, 13.04, 12.10, 12.04 or 11.10, use the following commands:
sudo add-apt-repository ppa:sander-vangrieken/vaapi
sudo apt-get update
sudo apt-get install mplayer-vaapi

Once installed, open SMPlayer (or whatever MPlayer GUI you're using: Gnome Mplayer, KMPlayer, etc.) and in its Preferences, on the Video tab (in SMPlayer: General Video > Output driver) set the video output driver to "vaapi":

SMPlayer vaapi

That's it!

Other Linux distributions:

Note: I've tested this on an Intel GPU only!