summaryrefslogtreecommitdiffstats
path: root/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.3.imx.bb
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.3.imx.bb')
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.3.imx.bb110
1 files changed, 110 insertions, 0 deletions
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.3.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.3.imx.bb
new file mode 100644
index 00000000..8cbbd2d1
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.3.imx.bb
@@ -0,0 +1,110 @@
1# This recipe is for the i.MX fork of gstreamer1.0-plugins-good. For ease of
2# maintenance, the top section is a verbatim copy of an OE-core
3# recipe. The second section customizes the recipe for i.MX.
4
5########### OE-core copy ##################
6# Upstream hash: 66ba273c10b7d738f18620b5a2883d735fff3162
7
8require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
9
10DESCRIPTION = "'Good' GStreamer plugins"
11HOMEPAGE = "https://gstreamer.freedesktop.org/"
12BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues"
13
14SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz \
15 file://0001-qt-include-ext-qt-gstqtgl.h-instead-of-gst-gl-gstglf.patch \
16 "
17
18SRC_URI[sha256sum] = "f8f3c206bf5cdabc00953920b47b3575af0ef15e9f871c0b6966f6d0aa5868b7"
19
20S = "${WORKDIR}/gst-plugins-good-${PV}"
21
22LICENSE = "LGPL-2.1-or-later"
23LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
24 file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe"
25
26DEPENDS += "gstreamer1.0-plugins-base libcap zlib"
27RPROVIDES:${PN}-pulseaudio += "${PN}-pulse"
28RPROVIDES:${PN}-soup += "${PN}-souphttpsrc"
29
30PACKAGECONFIG ??= " \
31 ${GSTREAMER_ORC} \
32 ${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio x11', d)} \
33 ${@bb.utils.contains('TUNE_FEATURES', 'm64', 'asm', '', d)} \
34 bz2 cairo flac gdk-pixbuf gudev jpeg lame libpng mpg123 soup speex taglib v4l2 \
35"
36
37X11DEPENDS = "virtual/libx11 libsm libxrender libxfixes libxdamage"
38X11ENABLEOPTS = "-Dximagesrc=enabled -Dximagesrc-xshm=enabled -Dximagesrc-xfixes=enabled -Dximagesrc-xdamage=enabled"
39X11DISABLEOPTS = "-Dximagesrc=disabled -Dximagesrc-xshm=disabled -Dximagesrc-xfixes=disabled -Dximagesrc-xdamage=disabled"
40
41QT5WAYLANDDEPENDS = "${@bb.utils.contains("DISTRO_FEATURES", "wayland", "qtwayland", "", d)}"
42
43PACKAGECONFIG[asm] = "-Dasm=enabled,-Dasm=disabled,nasm-native"
44PACKAGECONFIG[bz2] = "-Dbz2=enabled,-Dbz2=disabled,bzip2"
45PACKAGECONFIG[cairo] = "-Dcairo=enabled,-Dcairo=disabled,cairo"
46PACKAGECONFIG[dv1394] = "-Ddv1394=enabled,-Ddv1394=disabled,libiec61883 libavc1394 libraw1394"
47PACKAGECONFIG[flac] = "-Dflac=enabled,-Dflac=disabled,flac"
48PACKAGECONFIG[gdk-pixbuf] = "-Dgdk-pixbuf=enabled,-Dgdk-pixbuf=disabled,gdk-pixbuf"
49PACKAGECONFIG[gtk] = "-Dgtk3=enabled,-Dgtk3=disabled,gtk+3"
50PACKAGECONFIG[gudev] = "-Dv4l2-gudev=enabled,-Dv4l2-gudev=disabled,libgudev"
51PACKAGECONFIG[jack] = "-Djack=enabled,-Djack=disabled,jack"
52PACKAGECONFIG[jpeg] = "-Djpeg=enabled,-Djpeg=disabled,jpeg"
53PACKAGECONFIG[lame] = "-Dlame=enabled,-Dlame=disabled,lame"
54PACKAGECONFIG[libpng] = "-Dpng=enabled,-Dpng=disabled,libpng"
55PACKAGECONFIG[libv4l2] = "-Dv4l2-libv4l2=enabled,-Dv4l2-libv4l2=disabled,v4l-utils"
56PACKAGECONFIG[mpg123] = "-Dmpg123=enabled,-Dmpg123=disabled,mpg123"
57PACKAGECONFIG[pulseaudio] = "-Dpulse=enabled,-Dpulse=disabled,pulseaudio"
58PACKAGECONFIG[qt5] = "-Dqt5=enabled,-Dqt5=disabled,qtbase qtdeclarative qtbase-native ${QT5WAYLANDDEPENDS}"
59# Starting with version 1.20, the GStreamer soup plugin loads libsoup with dlopen()
60# instead of linking to it. And instead of using the default libsoup C headers, it
61# uses its own stub header. Consequently, objdump will not show the libsoup .so as
62# a dependency, and libsoup won't be added to an image. Fix this by setting libsoup
63# as RDEPEND instead of DEPEND.
64PACKAGECONFIG[soup] = "-Dsoup=enabled,-Dsoup=disabled,,libsoup-2.4"
65PACKAGECONFIG[speex] = "-Dspeex=enabled,-Dspeex=disabled,speex"
66PACKAGECONFIG[rpi] = "-Drpicamsrc=enabled,-Drpicamsrc=disabled,userland"
67PACKAGECONFIG[taglib] = "-Dtaglib=enabled,-Dtaglib=disabled,taglib"
68PACKAGECONFIG[v4l2] = "-Dv4l2=enabled -Dv4l2-probe=true,-Dv4l2=disabled -Dv4l2-probe=false"
69PACKAGECONFIG[vpx] = "-Dvpx=enabled,-Dvpx=disabled,libvpx"
70PACKAGECONFIG[wavpack] = "-Dwavpack=enabled,-Dwavpack=disabled,wavpack"
71PACKAGECONFIG[x11] = "${X11ENABLEOPTS},${X11DISABLEOPTS},${X11DEPENDS}"
72
73EXTRA_OEMESON += " \
74 -Ddoc=disabled \
75 -Daalib=disabled \
76 -Ddirectsound=disabled \
77 -Ddv=disabled \
78 -Dlibcaca=disabled \
79 -Doss=enabled \
80 -Doss4=disabled \
81 -Dosxaudio=disabled \
82 -Dosxvideo=disabled \
83 -Dshout2=disabled \
84 -Dtwolame=disabled \
85 -Dwaveform=disabled \
86"
87
88FILES:${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs"
89
90########### End of OE-core copy ###########
91
92########### i.MX overrides ################
93
94DEFAULT_PREFERENCE = "-1"
95
96# fb implementation of v4l2 uses libdrm
97DEPENDS += "${@bb.utils.contains('PACKAGECONFIG', 'v4l2', '${DEPENDS_V4L2}', '', d)}"
98DEPENDS_V4L2 = "${@bb.utils.contains_any('DISTRO_FEATURES', 'wayland x11', '', 'libdrm', d)}"
99
100SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz"
101SRC_URI:prepend = "${GST1.0-PLUGINS-GOOD_SRC};branch=${SRCBRANCH} "
102GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-good.git;protocol=https"
103SRCBRANCH = "MM_04.07.02_2210_L5.15.y"
104SRCREV = "643478677a4acb225dbb48e64720b06a7c6da668"
105
106S = "${WORKDIR}/git"
107
108COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
109
110########### End of i.MX overrides #########