1*4882a593Smuzhiyunconfig BR2_PACKAGE_GST1_VAAPI 2*4882a593Smuzhiyun bool "gst1-vaapi" 3*4882a593Smuzhiyun depends on !BR2_STATIC_LIBS # dlopen(), libva 4*4882a593Smuzhiyun depends on BR2_TOOLCHAIN_HAS_THREADS # libva, libdrm 5*4882a593Smuzhiyun depends on BR2_INSTALL_LIBSTDCPP # gst1-plugins-bad 6*4882a593Smuzhiyun depends on BR2_PACKAGE_HAS_UDEV 7*4882a593Smuzhiyun select BR2_PACKAGE_LIBVA 8*4882a593Smuzhiyun select BR2_PACKAGE_LIBDRM 9*4882a593Smuzhiyun select BR2_PACKAGE_GST1_PLUGINS_BASE 10*4882a593Smuzhiyun select BR2_PACKAGE_GST1_PLUGINS_BAD # gstreamer-codecparsers 11*4882a593Smuzhiyun select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7 12*4882a593Smuzhiyun select BR2_PACKAGE_XLIB_LIBXRANDR if BR2_PACKAGE_XORG7 13*4882a593Smuzhiyun help 14*4882a593Smuzhiyun gstreamer-vaapi consists in a collection of VA-API based 15*4882a593Smuzhiyun plugins for GStreamer and helper libraries. 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun vaapi<CODEC>dec is used to decode JPEG, MPEG-2, MPEG-4:2, 18*4882a593Smuzhiyun H.264 AVC, H.264 MVC, VP8, VC-1, WMV3, HEVC videos to VA 19*4882a593Smuzhiyun surfaces, depending on the actual value of <CODEC> and the 20*4882a593Smuzhiyun underlying hardware capabilities. This plugin is also able 21*4882a593Smuzhiyun to implicitly download the decoded surface to raw YUV 22*4882a593Smuzhiyun buffers. 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun vaapi<CODEC>enc is used to encode into MPEG-2, H.264 AVC, 25*4882a593Smuzhiyun H.264 MVC, JPEG, VP8, HEVC videos, depending on the actual 26*4882a593Smuzhiyun value of <CODEC> (mpeg2, h264, etc.) and the hardware 27*4882a593Smuzhiyun capabilities. By default, raw format bitstreams are 28*4882a593Smuzhiyun generated, so the result may be piped to a muxer, e.g. qtmux 29*4882a593Smuzhiyun for MP4 containers. 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun vaapipostproc is used to filter VA surfaces, for 32*4882a593Smuzhiyun e.g. scaling, deinterlacing (bob, motion-adaptive, 33*4882a593Smuzhiyun motion-compensated), noise reduction or sharpening. This 34*4882a593Smuzhiyun plugin is also used to upload raw YUV pixels into VA 35*4882a593Smuzhiyun surfaces. 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun vaapisink is used to render VA surfaces to an X11 or Wayland 38*4882a593Smuzhiyun display. This plugin also features a "headless" mode (DRM) 39*4882a593Smuzhiyun more suited to remote transcode scenarios, with faster 40*4882a593Smuzhiyun throughput. 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun https://cgit.freedesktop.org/gstreamer/gstreamer-vaapi 43*4882a593Smuzhiyun 44*4882a593Smuzhiyunif BR2_PACKAGE_GST1_VAAPI 45*4882a593Smuzhiyun 46*4882a593Smuzhiyunconfig BR2_PACKAGE_GST1_VAAPI_ENCODERS 47*4882a593Smuzhiyun bool "enable encoders" 48*4882a593Smuzhiyun 49*4882a593Smuzhiyunendif 50*4882a593Smuzhiyun 51*4882a593Smuzhiyuncomment "gst1-vaapi needs udev /dev management and a toolchain w/ threads, dynamic library, C++" 52*4882a593Smuzhiyun depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \ 53*4882a593Smuzhiyun !BR2_PACKAGE_HAS_UDEV || !BR2_INSTALL_LIBSTDCPP 54