xref: /OK3568_Linux_fs/yocto/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.20.5.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunSUMMARY = "OpenMAX IL plugins for GStreamer"
2*4882a593SmuzhiyunDESCRIPTION = "Wraps available OpenMAX IL components and makes them available as standard GStreamer elements."
3*4882a593SmuzhiyunHOMEPAGE = "http://gstreamer.freedesktop.org/"
4*4882a593SmuzhiyunSECTION = "multimedia"
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunLICENSE = "LGPL-2.1-or-later"
7*4882a593SmuzhiyunLICENSE_FLAGS = "commercial"
8*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
9*4882a593Smuzhiyun                    file://omx/gstomx.h;beginline=1;endline=21;md5=5c8e1fca32704488e76d2ba9ddfa935f"
10*4882a593Smuzhiyun
11*4882a593SmuzhiyunSRC_URI = "https://gstreamer.freedesktop.org/src/gst-omx/gst-omx-${PV}.tar.xz"
12*4882a593Smuzhiyun
13*4882a593SmuzhiyunSRC_URI[sha256sum] = "bcccbc02548cdc123fd49944dd44a4f1adc5d107e36f010d320eb526e2107806"
14*4882a593Smuzhiyun
15*4882a593SmuzhiyunS = "${WORKDIR}/gst-omx-${PV}"
16*4882a593Smuzhiyun
17*4882a593SmuzhiyunDEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad virtual/libomxil"
18*4882a593Smuzhiyun
19*4882a593Smuzhiyuninherit meson pkgconfig upstream-version-is-even
20*4882a593Smuzhiyun
21*4882a593SmuzhiyunGSTREAMER_1_0_OMX_TARGET ?= "bellagio"
22*4882a593SmuzhiyunGSTREAMER_1_0_OMX_CORE_NAME ?= "${libdir}/libomxil-bellagio.so.0"
23*4882a593Smuzhiyun
24*4882a593SmuzhiyunEXTRA_OEMESON += "-Dtarget=${GSTREAMER_1_0_OMX_TARGET}"
25*4882a593Smuzhiyun
26*4882a593Smuzhiyunpython __anonymous () {
27*4882a593Smuzhiyun    omx_target = d.getVar("GSTREAMER_1_0_OMX_TARGET")
28*4882a593Smuzhiyun    if omx_target in ['generic', 'bellagio']:
29*4882a593Smuzhiyun        # Bellagio headers are incomplete (they are missing the OMX_VERSION_MAJOR,#
30*4882a593Smuzhiyun        # OMX_VERSION_MINOR, OMX_VERSION_REVISION, and OMX_VERSION_STEP macros);
31*4882a593Smuzhiyun        # appending a directory path to gst-omx' internal OpenMAX IL headers fixes this
32*4882a593Smuzhiyun        d.appendVar("CFLAGS", " -I${S}/omx/openmax")
33*4882a593Smuzhiyun    elif omx_target == "rpi":
34*4882a593Smuzhiyun        # Dedicated Raspberry Pi OpenMAX IL support makes this package machine specific
35*4882a593Smuzhiyun        d.setVar("PACKAGE_ARCH", d.getVar("MACHINE_ARCH"))
36*4882a593Smuzhiyun}
37*4882a593Smuzhiyun
38*4882a593Smuzhiyunset_omx_core_name() {
39*4882a593Smuzhiyun	sed -i -e "s;^core-name=.*;core-name=${GSTREAMER_1_0_OMX_CORE_NAME};" "${D}${sysconfdir}/xdg/gstomx.conf"
40*4882a593Smuzhiyun}
41*4882a593Smuzhiyundo_install[postfuncs] += " set_omx_core_name "
42*4882a593Smuzhiyun
43*4882a593SmuzhiyunFILES:${PN} += "${libdir}/gstreamer-1.0/*.so"
44*4882a593SmuzhiyunFILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
45*4882a593Smuzhiyun
46*4882a593SmuzhiyunVIRTUAL-RUNTIME_libomxil ?= "libomxil"
47*4882a593SmuzhiyunRDEPENDS:${PN} = "${VIRTUAL-RUNTIME_libomxil}"
48