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_INSTALL_LIBSTDCPP # gst1-plugins-bad
	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, C++"
	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
		!BR2_PACKAGE_HAS_UDEV || !BR2_INSTALL_LIBSTDCPP
