xref: /OK3568_Linux_fs/yocto/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.20.5.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunSUMMARY = "VA-API support to GStreamer"
2*4882a593SmuzhiyunHOMEPAGE = "https://gstreamer.freedesktop.org/"
3*4882a593SmuzhiyunDESCRIPTION = "gstreamer-vaapi consists of a collection of VA-API \
4*4882a593Smuzhiyunbased plugins for GStreamer and helper libraries: `vaapidecode', \
5*4882a593Smuzhiyun`vaapiconvert', and `vaapisink'."
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunREALPN = "gstreamer-vaapi"
8*4882a593Smuzhiyun
9*4882a593SmuzhiyunLICENSE = "LGPL-2.1-or-later"
10*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
11*4882a593Smuzhiyun
12*4882a593SmuzhiyunSRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz"
13*4882a593Smuzhiyun
14*4882a593SmuzhiyunSRC_URI[sha256sum] = "510c6fb4ff3f676d7946ce1800e04ccf5aabe5a586d4e164d1961808fab8c94b"
15*4882a593Smuzhiyun
16*4882a593SmuzhiyunS = "${WORKDIR}/${REALPN}-${PV}"
17*4882a593SmuzhiyunDEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
18*4882a593Smuzhiyun
19*4882a593Smuzhiyuninherit meson pkgconfig features_check upstream-version-is-even
20*4882a593Smuzhiyun
21*4882a593SmuzhiyunREQUIRED_DISTRO_FEATURES ?= "opengl"
22*4882a593Smuzhiyun
23*4882a593SmuzhiyunEXTRA_OEMESON += " \
24*4882a593Smuzhiyun    -Ddoc=disabled \
25*4882a593Smuzhiyun    -Dexamples=disabled \
26*4882a593Smuzhiyun    -Dtests=enabled \
27*4882a593Smuzhiyun"
28*4882a593Smuzhiyun
29*4882a593SmuzhiyunPACKAGES =+ "${PN}-tests"
30*4882a593Smuzhiyun
31*4882a593Smuzhiyun# OpenGL packageconfig factored out to make it easy for distros
32*4882a593Smuzhiyun# and BSP layers to pick either glx, egl, or no GL. By default,
33*4882a593Smuzhiyun# try detecting X11 first, and if found (with OpenGL), use GLX,
34*4882a593Smuzhiyun# otherwise try to check if EGL can be used.
35*4882a593SmuzhiyunPACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'glx', \
36*4882a593Smuzhiyun                        bb.utils.contains('DISTRO_FEATURES',     'opengl', 'egl', \
37*4882a593Smuzhiyun                                                                       '', d), d)}"
38*4882a593Smuzhiyun
39*4882a593SmuzhiyunPACKAGECONFIG ??= "drm encoders \
40*4882a593Smuzhiyun                   ${PACKAGECONFIG_GL} \
41*4882a593Smuzhiyun                   ${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}"
42*4882a593Smuzhiyun
43*4882a593SmuzhiyunPACKAGECONFIG[drm] = "-Dwith_drm=yes,-Dwith_drm=no,udev libdrm"
44*4882a593SmuzhiyunPACKAGECONFIG[egl] = "-Dwith_egl=yes,-Dwith_egl=no,virtual/egl"
45*4882a593SmuzhiyunPACKAGECONFIG[encoders] = "-Dwith_encoders=yes,-Dwith_encoders=no"
46*4882a593SmuzhiyunPACKAGECONFIG[glx] = "-Dwith_glx=yes,-Dwith_glx=no,virtual/libgl"
47*4882a593SmuzhiyunPACKAGECONFIG[wayland] = "-Dwith_wayland=yes,-Dwith_wayland=no,wayland-native wayland wayland-protocols"
48*4882a593SmuzhiyunPACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxrandr libxrender"
49*4882a593Smuzhiyun
50*4882a593SmuzhiyunFILES:${PN} += "${libdir}/gstreamer-*/*.so"
51*4882a593SmuzhiyunFILES:${PN}-dbg += "${libdir}/gstreamer-*/.debug"
52*4882a593SmuzhiyunFILES:${PN}-dev += "${libdir}/gstreamer-*/*.a"
53*4882a593SmuzhiyunFILES:${PN}-tests = "${bindir}/*"
54