gstreamer-vaapi consists in a collection of VA-API based plugins for GStreamer and helper libraries. * `vaapidec' is used to decode JPEG, MPEG-2, MPEG-4:2, H.264 AVC, H.264 MVC, VP8, VP9, VC-1, WMV3, HEVC videos to VA surfaces, depending on the actual value of and the underlying hardware capabilities. This plugin is also able to implicitly download the decoded surface to raw YUV buffers. * `vaapienc' is used to encode into MPEG-2, H.264 AVC, H.264 MVC, JPEG, VP8, VP9, HEVC videos, depending on the actual value of (mpeg2, h264, etc.) and the hardware capabilities. By default, raw format bitstreams are generated, so the result may be piped to a muxer, e.g. qtmux for MP4 containers. * `vaapipostproc' is used to filter VA surfaces, for e.g. scaling, deinterlacing (bob, motion-adaptive, motion-compensated), noise reduction or sharpening. This plugin is also used to upload raw YUV pixels into VA surfaces. * `vaapisink' is used to render VA surfaces to an X11 or Wayland display. This plugin also features a "headless" mode (DRM) more suited to remote transcode scenarios, with faster throughput. * `vaapioverlay` is a accelerated compositor that blends or composite different video streams.