VAAPI (Video Acceleration API) is an open-source library and API specification, which provides access to graphics hardware acceleration capabilities for video processing. It consists of a main library and driver-specific acceleration backends for each supported hardware vendor.
The following features are currently supported in VAAPI for Intel graphics cards:
- 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).
- Intel® HD Graphics 2500/4000 (in 3nd Generation Intel® Core™ i7/i5/i3 Processor family).
- Intel® HD Graphics 4200/4400/4600/5000, Intel® Iris™ Graphics 5100, and Intel® Iris™ Pro Graphics 5200 (in 4nd Generation Intel® Core™ i7/i5/i3 Processor family).
- Support MPEG2 decode acceleration Main Profile @ HL up to 80 Mbps.
- Support MPEG2 encode acceleration Main profile @ HL up to 80 Mbps (excludes GMA X4500HD, HD Graphics and HD Graphics 2000/3000)
- Support VC-1 decode acceleration Advanced Profile @ Level 3 up to 40 Mbps (excludes GMA X4500HD and HD Graphics)
- 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 (excludes GMA X4500HD and HD Graphics).
- Support JPEG/MJPEG decoding (excludes GMA X4500HD, HD Graphics and HD Graphics 2000/3000).
- Support Video Post Processing (excludes GMA X4500HD).
|VAAPI Capability||MPEG2 decode||MPEG2 encode||H.264/AVC decode||VC-1 decode||H.264/AVC encode||JPEG/MJPEG||Video Post Processing|
|Intel® GMA X4500HD||Yes||Not supported by hardware||Yes with g45-h264 branch||Not implemented||Not supported by hardware||Not supported by Hardware||No|
|Intel® HD Graphics||Yes||Not supported by hardware||Yes||Not implemented||Not supported by hardware||Not supported by Hardware||Yes|
|Intel® HD Graphics 2000/3000||Yes||Not supported by hardware||Yes||Yes||Yes||Not supported by Hardware||Yes|
|Intel® Ivy Bridge||Yes||Yes||Yes||Yes||Yes||Yes||Yes|
To understand more about the VA API development, and participate in the process, the following are the main guidelines to get started:
Libva project is located at https://github.com/intel/libva
Intel driver project is located at https://github.com/intel/intel-vaapi-driver
Libva utils project has moved to https://github.com/intel/libva-utils
- Use https://github.com/intel/libva/issues/new to file bugs on the libva github site
- Use https://github.com/intel/intel-vaapi-driver/issues/new to file bugs on the intel-vaapi-driver github site
- Use https://github.com/intel/libva-utils/issues/new to file bugs on the libva-utils github site
- General developers discussions occur on the firstname.lastname@example.org mailing list.
- Subscribe to the list at https://lists.01.org/mailman/listinfo/intel-vaapi-media
- Archives are found at http://lists.01.org/pipermail/intel-vaapi-media/
- We also use [#Slack](https://slack.com) and host [VAAPI Media Slack Team](https://intel-media.slack.com).
- You can sign up by submitting your email address to our [Slack Team invite page](https://intelmedia.stamplayapp.com).
- Slack complements our other means of communication. Pick the one that works best for you!