VAAPI hardware decoding
Hardware Supported
Intel® GMA X4500HD.
Intel® HD Graphics (in Intel® 2010 Core™ i7/i5/i3 processor family).
Intel® HD Graphics 2000/3000 (in 2nd Generation Intel® Core™ i7/i5/i3 Processor family, codenamed Sandy Bridge).
Intel® HD Graphics 2500/4000 (in 3rd Generation Intel® Core™ i7/i5/i3 Processor family, codenamed Ivy Bridge).
Features
Support MPEG2 decode acceleration Main Profile @ HL up to 80 Mbps.
Support VC-1 decode acceleration Advanced Profile @ Level 3 up to 40 Mbps (HD Graphics 2000/2500/3000/4000 only).
Support H.264/AVC decode acceleration High Profile @ L4.1 up to 40 Mbps, with:
H.264 / AVC Hardware Variable Length Decoding (VLD) - CABAC
H.264 / AVC Hardware Variable Length Decoding (VLD) - CAVLC
H.264 / AVC Hardware Inverse Transform (IT)
H.264 / AVC Hardware Motion Compensation (HWMC)
H.264 / AVC Hardware In-Loop Deblocking (ILDB)
Support H.264/AVC encode acceleration Main Profile @ L4.1 up to 40 Mbps (HD Graphics 2000/2500/3000/4000 only).
VAAPI Capability | MPEG2 decode | H.264/AVC decode | VC-1 decode | H.264/AVC encode |
Intel® GMA X4500HD | Yes | Yes with g45-h264 branch | Not implemented | Not supported by hardware |
Intel® HD Graphics | Yes | Yes | Not implemented | Not supported by hardware |
Intel® HD Graphics 2000/3000 | Yes | Yes | Yes | Yes |
Intel® Ivy Bridge | Yes | Yes | Yes | Yes |
Recommended system packages
2012.02 release is recommended. The key components include:
Kernel: Linux 3.2 or later
Libdrm: libdrm 2.4.31
Latest VA API releases
The latest VA API packages recommended for Intel® graphics cards are:
Libva: libva 1.0.15
Libva-driver-intel: libva-driver-intel 1.0.17
In order to use VA-API, you need a media player that supports it. e.g. VLC 1.1.x, MPlayer with VA-API support, and GStreamer with VA-API support.
Install Instructions
libdrm
./autogen.sh ./configure make make install
libva
./autogen.sh (if compiling from a git clone'd repository) ./configure make make install
libva-driver-intel
./autogen.sh (if compiling from a git clone'd repository) ./configure make make install
mplayer-vaapi
Get MPlayer with VA-API support from mplayer-vaapi on Gitorious
git clone -b hwaccel-vaapi git://gitorious.org/vaapi/mplayer.git mplayer-vaapi
./configure --enable-x11 --enable-vaapi make make install
gstreamer-vaapi
Get GStreamer with VA-API support from gstreamer-vaapi on Gitorious
git clone git://gitorious.org/vaapi/gstreamer-vaapi.git gstreamer-vaapi
Dependencies: gstreamer-0.10 >= 0.10.36, gst-plugins-bad >= 0.10.22.
./autogen.sh ./configure make make install
Known Issues
During stress testing, sometimes mplayer stops at a frame in some streams
Under certain circumstance, very short period of arrtifacts on one frame when playing back some streams