blob: 91bd4f85ddbcc9bebab27702ed868ded2ea70b38 [file] [log] [blame]
config BR2_PACKAGE_GST1_VAAPI
bool "gst1-vaapi"
depends on !BR2_STATIC_LIBS # dlopen(), libva
depends on BR2_TOOLCHAIN_HAS_THREADS # libva, libdrm
depends on BR2_PACKAGE_HAS_UDEV
select BR2_PACKAGE_LIBVA
select BR2_PACKAGE_LIBDRM
select BR2_PACKAGE_GST1_PLUGINS_BASE
select BR2_PACKAGE_GST1_PLUGINS_BAD # gstreamer-codecparsers
help
gstreamer-vaapi consists in a collection of VA-API based
plugins for GStreamer and helper libraries.
vaapi<CODEC>dec is used to decode JPEG, MPEG-2, MPEG-4:2,
H.264 AVC, H.264 MVC, VP8, VC-1, WMV3, HEVC videos to VA
surfaces, depending on the actual value of <CODEC> and the
underlying hardware capabilities. This plugin is also able
to implicitly download the decoded surface to raw YUV
buffers.
vaapi<CODEC>enc is used to encode into MPEG-2, H.264 AVC,
H.264 MVC, JPEG, VP8, HEVC videos, depending on the actual
value of <CODEC> (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.
https://cgit.freedesktop.org/gstreamer/gstreamer-vaapi
if BR2_PACKAGE_GST1_VAAPI
config BR2_PACKAGE_GST1_VAAPI_ENCODERS
bool "enable encoders"
endif
comment "gst1-vaapi needs udev /dev management and a toolchain w/ threads, dynamic library"
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
!BR2_PACKAGE_HAS_UDEV