summaryrefslogtreecommitdiffstats
path: root/meta/recipes-multimedia/gstreamer
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-multimedia/gstreamer')
-rw-r--r--meta/recipes-multimedia/gstreamer/gst-devtools/0001-connect-has-a-different-signature-on-musl.patch3
-rw-r--r--meta/recipes-multimedia/gstreamer/gst-devtools_1.22.11.bb (renamed from meta/recipes-multimedia/gstreamer/gst-devtools_1.18.3.bb)13
-rw-r--r--meta/recipes-multimedia/gstreamer/gst-examples/gst-player.desktop2
-rw-r--r--meta/recipes-multimedia/gstreamer/gst-examples_1.18.6.bb (renamed from meta/recipes-multimedia/gstreamer/gst-examples_1.18.3.bb)16
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.22.11.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.3.bb)14
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb25
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.22.11.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.3.bb)10
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch8
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0002-avoid-including-sys-poll.h-directly.patch12
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch88
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch42
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch31
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.22.11.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.3.bb)54
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-ENGR00312515-get-caps-from-src-pad-when-query-caps.patch12
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-ssaparse-enhance-SSA-text-lines-parsing.patch22
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-viv-fb-Make-sure-config.h-is-included.patch10
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-glimagesink-Downrank-to-marginal.patch32
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.22.11.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.3.bb)33
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc5
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-qt-include-ext-qt-gstqtgl.h-instead-of-gst-gl-gstglf.patch56
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-v4l2-Define-ioctl_req_t-for-posix-linux-case.patch38
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.22.11.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.3.bb)26
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-license.inc19
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc33
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.22.11.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.3.bb)19
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-ptest.inc23
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.22.11.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.3.bb)20
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.22.11.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.3.bb)6
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.22.11.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.3.bb)27
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch66
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch34
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch32
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch112
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch107
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-meson-Add-option-for-installed-tests.patch257
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch48
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch72
-rwxr-xr-xmeta/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest16
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0_1.22.11.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.3.bb)32
39 files changed, 561 insertions, 914 deletions
diff --git a/meta/recipes-multimedia/gstreamer/gst-devtools/0001-connect-has-a-different-signature-on-musl.patch b/meta/recipes-multimedia/gstreamer/gst-devtools/0001-connect-has-a-different-signature-on-musl.patch
index c0e4581358..21e30d6d46 100644
--- a/meta/recipes-multimedia/gstreamer/gst-devtools/0001-connect-has-a-different-signature-on-musl.patch
+++ b/meta/recipes-multimedia/gstreamer/gst-devtools/0001-connect-has-a-different-signature-on-musl.patch
@@ -1,4 +1,4 @@
1From 73b1002eda17451db1f58431b42c25203f1d3097 Mon Sep 17 00:00:00 2001 1From 0c73b8131efba63c5cd37ea8c7551434c3b57304 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 9 Sep 2018 17:38:10 -0700 3Date: Sun, 9 Sep 2018 17:38:10 -0700
4Subject: [PATCH] connect has a different signature on musl 4Subject: [PATCH] connect has a different signature on musl
@@ -11,6 +11,7 @@ typcasted to struct sockaddr_in* type inside the function before use
11Upstream-Status: Pending 11Upstream-Status: Pending
12 12
13Signed-off-by: Khem Raj <raj.khem@gmail.com> 13Signed-off-by: Khem Raj <raj.khem@gmail.com>
14
14--- 15---
15 validate/plugins/fault_injection/socket_interposer.c | 7 ++++++- 16 validate/plugins/fault_injection/socket_interposer.c | 7 ++++++-
16 1 file changed, 6 insertions(+), 1 deletion(-) 17 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.3.bb b/meta/recipes-multimedia/gstreamer/gst-devtools_1.22.11.bb
index bad9921757..2be406192f 100644
--- a/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.3.bb
+++ b/meta/recipes-multimedia/gstreamer/gst-devtools_1.22.11.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "A Tool to test GStreamer components"
3HOMEPAGE = "https://gstreamer.freedesktop.org/documentation/gst-devtools/index.html" 3HOMEPAGE = "https://gstreamer.freedesktop.org/documentation/gst-devtools/index.html"
4SECTION = "multimedia" 4SECTION = "multimedia"
5 5
6LICENSE = "LGPLv2.1" 6LICENSE = "LGPL-2.1-or-later"
7LIC_FILES_CHKSUM = "file://validate/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343" 7LIC_FILES_CHKSUM = "file://validate/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343"
8 8
9#S = "${WORKDIR}/gst-devtools-${PV}" 9#S = "${WORKDIR}/gst-devtools-${PV}"
@@ -12,12 +12,12 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-devtools/gst-devtools-${PV}
12 file://0001-connect-has-a-different-signature-on-musl.patch \ 12 file://0001-connect-has-a-different-signature-on-musl.patch \
13 " 13 "
14 14
15SRC_URI[sha256sum] = "3025fee3607caf5069154c099533785675916e044ee92c936bbeacdda3750f26" 15SRC_URI[sha256sum] = "07766425ecb5bf857ab5ad3962321c55cd89f9386b720843f9df71c0a455eb9b"
16 16
17DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base" 17DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base"
18RRECOMMENDS_${PN} = "git" 18RRECOMMENDS:${PN} = "git"
19 19
20FILES_${PN} += "${datadir}/gstreamer-1.0/* ${libdir}/gst-validate-launcher/* ${libdir}/gstreamer-1.0/*" 20FILES:${PN} += "${datadir}/gstreamer-1.0/* ${libdir}/gst-validate-launcher/* ${libdir}/gstreamer-1.0/*"
21 21
22inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection 22inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection
23 23
@@ -30,6 +30,9 @@ def gettext_oemeson(d):
30 return '-Dnls=disabled' 30 return '-Dnls=disabled'
31 return '-Dnls=enabled' 31 return '-Dnls=enabled'
32 32
33# Build GstValidateVideo
34PACKAGECONFIG[cairo] = "-Dcairo=enabled,-Dcairo=disabled,cairo"
35
33EXTRA_OEMESON += " \ 36EXTRA_OEMESON += " \
34 -Ddoc=disabled \ 37 -Ddoc=disabled \
35 -Ddebug_viewer=disabled \ 38 -Ddebug_viewer=disabled \
@@ -38,7 +41,7 @@ EXTRA_OEMESON += " \
38 ${@gettext_oemeson(d)} \ 41 ${@gettext_oemeson(d)} \
39" 42"
40 43
41do_install_append () { 44do_install:append () {
42 for fn in ${bindir}/gst-validate-launcher \ 45 for fn in ${bindir}/gst-validate-launcher \
43 ${libdir}/gst-validate-launcher/python/launcher/config.py; do 46 ${libdir}/gst-validate-launcher/python/launcher/config.py; do
44 sed -i -e 's,${B},/usr/src/debug/${PN},g' -e 's,${S},/usr/src/debug/${PN},g' ${D}$fn 47 sed -i -e 's,${B},/usr/src/debug/${PN},g' -e 's,${S},/usr/src/debug/${PN},g' ${D}$fn
diff --git a/meta/recipes-multimedia/gstreamer/gst-examples/gst-player.desktop b/meta/recipes-multimedia/gstreamer/gst-examples/gst-player.desktop
index 7ddd456a1e..d165e5d910 100644
--- a/meta/recipes-multimedia/gstreamer/gst-examples/gst-player.desktop
+++ b/meta/recipes-multimedia/gstreamer/gst-examples/gst-player.desktop
@@ -1,7 +1,7 @@
1[Desktop Entry] 1[Desktop Entry]
2Name=Media Player 2Name=Media Player
3Comment=Basic media player 3Comment=Basic media player
4Icon=multimedia-player 4Icon=video-player
5TryExec=gtk-play 5TryExec=gtk-play
6Exec=gtk-play 6Exec=gtk-play
7StartupNotify=true 7StartupNotify=true
diff --git a/meta/recipes-multimedia/gstreamer/gst-examples_1.18.3.bb b/meta/recipes-multimedia/gstreamer/gst-examples_1.18.6.bb
index b49201fb0e..02282ac5d9 100644
--- a/meta/recipes-multimedia/gstreamer/gst-examples_1.18.3.bb
+++ b/meta/recipes-multimedia/gstreamer/gst-examples_1.18.6.bb
@@ -2,7 +2,7 @@ SUMMARY = "GStreamer examples (including gtk-play, gst-play)"
2DESCRIPTION = "GStreamer example applications" 2DESCRIPTION = "GStreamer example applications"
3HOMEPAGE = "https://gitlab.freedesktop.org/gstreamer/gst-examples" 3HOMEPAGE = "https://gitlab.freedesktop.org/gstreamer/gst-examples"
4BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-examples/-/issues" 4BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-examples/-/issues"
5LICENSE = "LGPL-2.0+" 5LICENSE = "LGPL-2.0-or-later"
6LIC_FILES_CHKSUM = "file://playback/player/gtk/gtk-play.c;beginline=1;endline=20;md5=f8c72dae3d36823ec716a9ebcae593b9" 6LIC_FILES_CHKSUM = "file://playback/player/gtk/gtk-play.c;beginline=1;endline=20;md5=f8c72dae3d36823ec716a9ebcae593b9"
7 7
8DEPENDS = "glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad gtk+3 libsoup-2.4 json-glib glib-2.0-native" 8DEPENDS = "glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad gtk+3 libsoup-2.4 json-glib glib-2.0-native"
@@ -12,7 +12,7 @@ SRC_URI = "git://gitlab.freedesktop.org/gstreamer/gst-examples.git;protocol=http
12 file://gst-player.desktop \ 12 file://gst-player.desktop \
13 " 13 "
14 14
15SRCREV = "06599904baa5d0e47b5cb9501372156567760f8e" 15SRCREV = "70e4fcf4fc8ae19641aa990de5f37d758cdfcea4"
16 16
17S = "${WORKDIR}/git" 17S = "${WORKDIR}/git"
18 18
@@ -22,14 +22,14 @@ UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)"
22 22
23ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" 23ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
24 24
25do_install_append() { 25do_install:append() {
26 install -m 0644 -D ${WORKDIR}/gst-player.desktop ${D}${datadir}/applications/gst-player.desktop 26 install -m 0644 -D ${WORKDIR}/gst-player.desktop ${D}${datadir}/applications/gst-player.desktop
27} 27}
28 28
29RDEPENDS_${PN} = "gstreamer1.0-plugins-base-playback" 29RDEPENDS:${PN} = "gstreamer1.0-plugins-base-playback"
30RRECOMMENDS_${PN} = "gstreamer1.0-plugins-base-meta \ 30RRECOMMENDS:${PN} = "gstreamer1.0-plugins-base-meta \
31 gstreamer1.0-plugins-good-meta \ 31 gstreamer1.0-plugins-good-meta \
32 gstreamer1.0-plugins-bad-meta \ 32 gstreamer1.0-plugins-bad-meta \
33 ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "gstreamer1.0-libav", "", d)} \ 33 ${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "gstreamer1.0-libav", "", d)} \
34 ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "gstreamer1.0-plugins-ugly-meta", "", d)}" 34 ${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "gstreamer1.0-plugins-ugly-meta", "", d)}"
35RPROVIDES_${PN} += "gst-player gst-player-bin" 35RPROVIDES:${PN} += "gst-player gst-player-bin"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.3.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.22.11.bb
index baf87fd871..f3287efa96 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.3.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.22.11.bb
@@ -6,13 +6,13 @@ SECTION = "multimedia"
6 6
7# ffmpeg has comercial license flags so add it as we need ffmpeg as a dependency 7# ffmpeg has comercial license flags so add it as we need ffmpeg as a dependency
8LICENSE_FLAGS = "commercial" 8LICENSE_FLAGS = "commercial"
9LICENSE = "LGPLv2+" 9LICENSE = "LGPL-2.1-or-later"
10LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \ 10LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770 \
11 file://ext/libav/gstav.h;beginline=1;endline=18;md5=a752c35267d8276fd9ca3db6994fca9c \ 11 file://ext/libav/gstav.h;beginline=1;endline=18;md5=a752c35267d8276fd9ca3db6994fca9c \
12 " 12 "
13 13
14SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz" 14SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz"
15SRC_URI[sha256sum] = "ad20546bcd78ac1e7cf194666d73c4f33efeb62647d2b6af22993b540699e91c" 15SRC_URI[sha256sum] = "6b13dcc9332ef27a7c1e7005c0196883874f91622f8aa6e52f218b05b15d2bf5"
16 16
17S = "${WORKDIR}/gst-libav-${PV}" 17S = "${WORKDIR}/gst-libav-${PV}"
18 18
@@ -20,5 +20,9 @@ DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base ffmpeg"
20 20
21inherit meson pkgconfig upstream-version-is-even 21inherit meson pkgconfig upstream-version-is-even
22 22
23FILES_${PN} += "${libdir}/gstreamer-1.0/*.so" 23EXTRA_OEMESON += " \
24FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" 24 -Dtests=disabled \
25"
26
27FILES:${PN} += "${libdir}/gstreamer-1.0/*.so"
28FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb
index 016e176707..6cc11e1928 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb
@@ -18,13 +18,13 @@ PACKAGES = "\
18 gstreamer1.0-meta-debug \ 18 gstreamer1.0-meta-debug \
19 gstreamer1.0-meta-video" 19 gstreamer1.0-meta-video"
20 20
21ALLOW_EMPTY_gstreamer1.0-meta-base = "1" 21ALLOW_EMPTY:gstreamer1.0-meta-base = "1"
22ALLOW_EMPTY_gstreamer1.0-meta-x11-base = "1" 22ALLOW_EMPTY:gstreamer1.0-meta-x11-base = "1"
23ALLOW_EMPTY_gstreamer1.0-meta-audio = "1" 23ALLOW_EMPTY:gstreamer1.0-meta-audio = "1"
24ALLOW_EMPTY_gstreamer1.0-meta-debug = "1" 24ALLOW_EMPTY:gstreamer1.0-meta-debug = "1"
25ALLOW_EMPTY_gstreamer1.0-meta-video = "1" 25ALLOW_EMPTY:gstreamer1.0-meta-video = "1"
26 26
27RDEPENDS_gstreamer1.0-meta-base = "\ 27RDEPENDS:gstreamer1.0-meta-base = "\
28 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gstreamer1.0-meta-x11-base', '', d)} \ 28 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gstreamer1.0-meta-x11-base', '', d)} \
29 gstreamer1.0 \ 29 gstreamer1.0 \
30 gstreamer1.0-plugins-base-playback \ 30 gstreamer1.0-plugins-base-playback \
@@ -34,16 +34,15 @@ RDEPENDS_gstreamer1.0-meta-base = "\
34 gstreamer1.0-plugins-base-audioconvert \ 34 gstreamer1.0-plugins-base-audioconvert \
35 gstreamer1.0-plugins-base-audioresample \ 35 gstreamer1.0-plugins-base-audioresample \
36 gstreamer1.0-plugins-base-typefindfunctions \ 36 gstreamer1.0-plugins-base-typefindfunctions \
37 gstreamer1.0-plugins-base-videoscale \ 37 gstreamer1.0-plugins-base-videoconvertscale \
38 gstreamer1.0-plugins-base-videoconvert \
39 gstreamer1.0-plugins-good-autodetect \ 38 gstreamer1.0-plugins-good-autodetect \
40 gstreamer1.0-plugins-good-soup" 39 gstreamer1.0-plugins-good-soup"
41 40
42RRECOMMENDS_gstreamer1.0-meta-x11-base = "\ 41RRECOMMENDS:gstreamer1.0-meta-x11-base = "\
43 gstreamer1.0-plugins-base-ximagesink \ 42 gstreamer1.0-plugins-base-ximagesink \
44 gstreamer1.0-plugins-base-xvimagesink" 43 gstreamer1.0-plugins-base-xvimagesink"
45 44
46RDEPENDS_gstreamer1.0-meta-audio = "\ 45RDEPENDS:gstreamer1.0-meta-audio = "\
47 gstreamer1.0-meta-base \ 46 gstreamer1.0-meta-base \
48 gstreamer1.0-plugins-base-vorbis \ 47 gstreamer1.0-plugins-base-vorbis \
49 gstreamer1.0-plugins-base-ogg \ 48 gstreamer1.0-plugins-base-ogg \
@@ -51,18 +50,18 @@ RDEPENDS_gstreamer1.0-meta-audio = "\
51 gstreamer1.0-plugins-good-flac \ 50 gstreamer1.0-plugins-good-flac \
52 ${COMMERCIAL_AUDIO_PLUGINS}" 51 ${COMMERCIAL_AUDIO_PLUGINS}"
53 52
54RDEPENDS_gstreamer1.0-meta-debug = "\ 53RDEPENDS:gstreamer1.0-meta-debug = "\
55 gstreamer1.0-meta-base \ 54 gstreamer1.0-meta-base \
56 gstreamer1.0-plugins-good-debug \ 55 gstreamer1.0-plugins-good-debug \
57 gstreamer1.0-plugins-base-audiotestsrc \ 56 gstreamer1.0-plugins-base-audiotestsrc \
58 gstreamer1.0-plugins-base-videotestsrc" 57 gstreamer1.0-plugins-base-videotestsrc"
59 58
60RDEPENDS_gstreamer1.0-meta-video = "\ 59RDEPENDS:gstreamer1.0-meta-video = "\
61 gstreamer1.0-meta-base \ 60 gstreamer1.0-meta-base \
62 gstreamer1.0-plugins-good-avi \ 61 gstreamer1.0-plugins-good-avi \
63 gstreamer1.0-plugins-good-matroska \ 62 gstreamer1.0-plugins-good-matroska \
64 gstreamer1.0-plugins-base-theora \ 63 gstreamer1.0-plugins-base-theora \
65 ${COMMERCIAL_VIDEO_PLUGINS}" 64 ${COMMERCIAL_VIDEO_PLUGINS}"
66 65
67RRECOMMENDS_gstreamer1.0-meta-video = "\ 66RRECOMMENDS:gstreamer1.0-meta-video = "\
68 gstreamer1.0-meta-audio" 67 gstreamer1.0-meta-audio"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.3.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.22.11.bb
index d55f45ac6a..97348fb398 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.3.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.22.11.bb
@@ -3,14 +3,14 @@ DESCRIPTION = "Wraps available OpenMAX IL components and makes them available as
3HOMEPAGE = "http://gstreamer.freedesktop.org/" 3HOMEPAGE = "http://gstreamer.freedesktop.org/"
4SECTION = "multimedia" 4SECTION = "multimedia"
5 5
6LICENSE = "LGPLv2.1" 6LICENSE = "LGPL-2.1-or-later"
7LICENSE_FLAGS = "commercial" 7LICENSE_FLAGS = "commercial"
8LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ 8LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
9 file://omx/gstomx.h;beginline=1;endline=21;md5=5c8e1fca32704488e76d2ba9ddfa935f" 9 file://omx/gstomx.h;beginline=1;endline=21;md5=5c8e1fca32704488e76d2ba9ddfa935f"
10 10
11SRC_URI = "https://gstreamer.freedesktop.org/src/gst-omx/gst-omx-${PV}.tar.xz" 11SRC_URI = "https://gstreamer.freedesktop.org/src/gst-omx/gst-omx-${PV}.tar.xz"
12 12
13SRC_URI[sha256sum] = "ed0f26504e9a60e15055134410f156e40952336410f2a59bdbbda45e61e8b93f" 13SRC_URI[sha256sum] = "18dfdf5f6b773d67e62a315c6cf6247da320b83603a5819493f53c69ed2eeef6"
14 14
15S = "${WORKDIR}/gst-omx-${PV}" 15S = "${WORKDIR}/gst-omx-${PV}"
16 16
@@ -40,8 +40,8 @@ set_omx_core_name() {
40} 40}
41do_install[postfuncs] += " set_omx_core_name " 41do_install[postfuncs] += " set_omx_core_name "
42 42
43FILES_${PN} += "${libdir}/gstreamer-1.0/*.so" 43FILES:${PN} += "${libdir}/gstreamer-1.0/*.so"
44FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" 44FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
45 45
46VIRTUAL-RUNTIME_libomxil ?= "libomxil" 46VIRTUAL-RUNTIME_libomxil ?= "libomxil"
47RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_libomxil}" 47RDEPENDS:${PN} = "${VIRTUAL-RUNTIME_libomxil}"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch
index 13a673cd50..a57fcd7d21 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch
@@ -1,11 +1,12 @@
1From f08ab3ac2ce43ac91d3bf65b26f26436690f499b Mon Sep 17 00:00:00 2001 1From 8be0c6ac60c96e87d8aa443be9c431844dc3d92a Mon Sep 17 00:00:00 2001
2From: Andre McCurdy <armccurdy@gmail.com> 2From: Andre McCurdy <armccurdy@gmail.com>
3Date: Tue, 26 Jan 2016 15:16:01 -0800 3Date: Tue, 26 Jan 2016 15:16:01 -0800
4Subject: [PATCH 1/4] fix maybe-uninitialized warnings when compiling with -Os 4Subject: [PATCH] fix maybe-uninitialized warnings when compiling with -Os
5 5
6Upstream-Status: Pending 6Upstream-Status: Pending
7 7
8Signed-off-by: Andre McCurdy <armccurdy@gmail.com> 8Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
9
9--- 10---
10 gst-libs/gst/codecparsers/gstvc1parser.c | 2 +- 11 gst-libs/gst/codecparsers/gstvc1parser.c | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-) 12 1 file changed, 1 insertion(+), 1 deletion(-)
@@ -23,6 +24,3 @@ index 2c60ced..e8226d8 100644
23 guint8 structA[8] = { 0, }; 24 guint8 structA[8] = { 0, };
24 guint8 structB[12] = { 0, }; 25 guint8 structB[12] = { 0, };
25 GstBitReader br; 26 GstBitReader br;
26--
272.28.0
28
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0002-avoid-including-sys-poll.h-directly.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0002-avoid-including-sys-poll.h-directly.patch
index ead6897f67..6509a293b7 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0002-avoid-including-sys-poll.h-directly.patch
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0002-avoid-including-sys-poll.h-directly.patch
@@ -1,22 +1,23 @@
1From 3b05e91720c10fcf6e0e408595b7217f6fa145c2 Mon Sep 17 00:00:00 2001 1From 426ee79adeecc24605426030a486d7c5a755048c Mon Sep 17 00:00:00 2001
2From: Andre McCurdy <armccurdy@gmail.com> 2From: Andre McCurdy <armccurdy@gmail.com>
3Date: Wed, 3 Feb 2016 18:05:41 -0800 3Date: Wed, 3 Feb 2016 18:05:41 -0800
4Subject: [PATCH 2/4] avoid including <sys/poll.h> directly 4Subject: [PATCH] avoid including <sys/poll.h> directly
5 5
6musl libc generates warnings if <sys/poll.h> is included directly. 6musl libc generates warnings if <sys/poll.h> is included directly.
7 7
8Upstream-Status: Pending 8Upstream-Status: Pending
9 9
10Signed-off-by: Andre McCurdy <armccurdy@gmail.com> 10Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
11
11--- 12---
12 sys/dvb/gstdvbsrc.c | 2 +- 13 sys/dvb/gstdvbsrc.c | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-) 14 1 file changed, 1 insertion(+), 1 deletion(-)
14 15
15diff --git a/sys/dvb/gstdvbsrc.c b/sys/dvb/gstdvbsrc.c 16diff --git a/sys/dvb/gstdvbsrc.c b/sys/dvb/gstdvbsrc.c
16index ca6b92a..b2772db 100644 17index b8e5b1a..5bca6e5 100644
17--- a/sys/dvb/gstdvbsrc.c 18--- a/sys/dvb/gstdvbsrc.c
18+++ b/sys/dvb/gstdvbsrc.c 19+++ b/sys/dvb/gstdvbsrc.c
19@@ -97,7 +97,7 @@ 20@@ -98,7 +98,7 @@
20 #include <gst/gst.h> 21 #include <gst/gst.h>
21 #include <gst/glib-compat-private.h> 22 #include <gst/glib-compat-private.h>
22 #include <sys/ioctl.h> 23 #include <sys/ioctl.h>
@@ -25,6 +26,3 @@ index ca6b92a..b2772db 100644
25 #include <fcntl.h> 26 #include <fcntl.h>
26 #include <errno.h> 27 #include <errno.h>
27 #include <stdio.h> 28 #include <stdio.h>
28--
292.28.0
30
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch
deleted file mode 100644
index 88fbc40dcd..0000000000
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch
+++ /dev/null
@@ -1,88 +0,0 @@
1From 5ed27de9f662fe063b8b3d5d4335aa64cd4718c9 Mon Sep 17 00:00:00 2001
2From: Andre McCurdy <armccurdy@gmail.com>
3Date: Tue, 9 Feb 2016 14:00:00 -0800
4Subject: [PATCH 3/4] ensure valid sentinals for gst_structure_get() etc
5
6For GStreamer functions declared with G_GNUC_NULL_TERMINATED,
7ie __attribute__((__sentinel__)), gcc will generate a warning if the
8last parameter passed to the function is not NULL (where a valid NULL
9in this context is defined as zero with any pointer type).
10
11The C callers to such functions within gst-plugins-bad use the C NULL
12definition (ie ((void*)0)), which is a valid sentinel.
13
14However the C++ NULL definition (ie 0L), is not a valid sentinel
15without an explicit cast to a pointer type.
16
17Upstream-Status: Pending
18
19Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
20---
21 sys/decklink/gstdecklink.cpp | 10 +++++-----
22 sys/decklink/gstdecklinkaudiosrc.cpp | 2 +-
23 sys/decklink/gstdecklinkvideosink.cpp | 2 +-
24 3 files changed, 7 insertions(+), 7 deletions(-)
25
26diff --git a/sys/decklink/gstdecklink.cpp b/sys/decklink/gstdecklink.cpp
27index 4dac7e1..43762ce 100644
28--- a/sys/decklink/gstdecklink.cpp
29+++ b/sys/decklink/gstdecklink.cpp
30@@ -674,7 +674,7 @@ gst_decklink_mode_get_generic_structure (GstDecklinkModeEnum e)
31 "pixel-aspect-ratio", GST_TYPE_FRACTION, mode->par_n, mode->par_d,
32 "interlace-mode", G_TYPE_STRING,
33 mode->interlaced ? "interleaved" : "progressive",
34- "framerate", GST_TYPE_FRACTION, mode->fps_n, mode->fps_d, NULL);
35+ "framerate", GST_TYPE_FRACTION, mode->fps_n, mode->fps_d, (void*)NULL);
36
37 return s;
38 }
39@@ -699,16 +699,16 @@ gst_decklink_mode_get_structure (GstDecklinkModeEnum e, BMDPixelFormat f,
40 case bmdFormat8BitYUV: /* '2vuy' */
41 gst_structure_set (s, "format", G_TYPE_STRING, "UYVY",
42 "colorimetry", G_TYPE_STRING, mode->colorimetry,
43- "chroma-site", G_TYPE_STRING, "mpeg2", NULL);
44+ "chroma-site", G_TYPE_STRING, "mpeg2", (void*)NULL);
45 break;
46 case bmdFormat10BitYUV: /* 'v210' */
47- gst_structure_set (s, "format", G_TYPE_STRING, "v210", NULL);
48+ gst_structure_set (s, "format", G_TYPE_STRING, "v210", (void*)NULL);
49 break;
50 case bmdFormat8BitARGB: /* 'ARGB' */
51- gst_structure_set (s, "format", G_TYPE_STRING, "ARGB", NULL);
52+ gst_structure_set (s, "format", G_TYPE_STRING, "ARGB", (void*)NULL);
53 break;
54 case bmdFormat8BitBGRA: /* 'BGRA' */
55- gst_structure_set (s, "format", G_TYPE_STRING, "BGRA", NULL);
56+ gst_structure_set (s, "format", G_TYPE_STRING, "BGRA", (void*)NULL);
57 break;
58 case bmdFormat10BitRGB: /* 'r210' Big-endian RGB 10-bit per component with SMPTE video levels (64-960). Packed as 2:10:10:10 */
59 case bmdFormat12BitRGB: /* 'R12B' Big-endian RGB 12-bit per component with full range (0-4095). Packed as 12-bit per component */
60diff --git a/sys/decklink/gstdecklinkaudiosrc.cpp b/sys/decklink/gstdecklinkaudiosrc.cpp
61index 2fef934..c47229a 100644
62--- a/sys/decklink/gstdecklinkaudiosrc.cpp
63+++ b/sys/decklink/gstdecklinkaudiosrc.cpp
64@@ -379,7 +379,7 @@ gst_decklink_audio_src_start (GstDecklinkAudioSrc * self)
65 g_mutex_unlock (&self->input->lock);
66
67 if (videosrc) {
68- g_object_get (videosrc, "connection", &vconn, NULL);
69+ g_object_get (videosrc, "connection", &vconn, (void *) NULL);
70 gst_object_unref (videosrc);
71
72 switch (vconn) {
73diff --git a/sys/decklink/gstdecklinkvideosink.cpp b/sys/decklink/gstdecklinkvideosink.cpp
74index e3a6775..f1a5aae 100644
75--- a/sys/decklink/gstdecklinkvideosink.cpp
76+++ b/sys/decklink/gstdecklinkvideosink.cpp
77@@ -286,7 +286,7 @@ reset_framerate (GstCapsFeatures * features, GstStructure * structure,
78 gpointer user_data)
79 {
80 gst_structure_set (structure, "framerate", GST_TYPE_FRACTION_RANGE, 0, 1,
81- G_MAXINT, 1, NULL);
82+ G_MAXINT, 1, (void *) NULL);
83
84 return TRUE;
85 }
86--
872.28.0
88
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch
index b816709066..50a3143eca 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch
@@ -1,7 +1,7 @@
1From f19ff66640f2f472c4e9d9055253032d34e125c6 Mon Sep 17 00:00:00 2001 1From e6eb7536fcfc2c75f7831f67b1f16f3f36ef2545 Mon Sep 17 00:00:00 2001
2From: Andrey Zhizhikin <andrey.z@gmail.com> 2From: Andrey Zhizhikin <andrey.z@gmail.com>
3Date: Mon, 27 Jan 2020 10:22:35 +0000 3Date: Mon, 27 Jan 2020 10:22:35 +0000
4Subject: [PATCH 4/4] opencv: resolve missing opencv data dir in yocto build 4Subject: [PATCH] opencv: resolve missing opencv data dir in yocto build
5 5
6When Yocto build is performed, opencv searches for data dir using simple 6When Yocto build is performed, opencv searches for data dir using simple
7'test' command, this fails because pkg-config provides an absolute 7'test' command, this fails because pkg-config provides an absolute
@@ -11,39 +11,23 @@ in order for the 'test' utility to pick up the absolute path.
11Upstream-Status: Inappropriate [OE-specific] 11Upstream-Status: Inappropriate [OE-specific]
12 12
13Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com> 13Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
14Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
15
14--- 16---
15 ext/opencv/meson.build | 7 ++++--- 17 ext/opencv/meson.build | 3 +++
16 1 file changed, 4 insertions(+), 3 deletions(-) 18 1 file changed, 3 insertions(+)
17 19
18diff --git a/ext/opencv/meson.build b/ext/opencv/meson.build 20diff --git a/ext/opencv/meson.build b/ext/opencv/meson.build
19index 0b0b3fc..0ed3344 100644 21index 37e2015..326f737 100644
20--- a/ext/opencv/meson.build 22--- a/ext/opencv/meson.build
21+++ b/ext/opencv/meson.build 23+++ b/ext/opencv/meson.build
22@@ -78,20 +78,21 @@ else 24@@ -87,6 +87,9 @@ if opencv_found
23 endif 25 opencv_prefix = opencv_dep.get_variable('prefix')
24
25 if opencv_found
26+ pkgconf_sysroot = run_command(python3, '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip()
27 opencv_prefix = opencv_dep.get_pkgconfig_variable('prefix')
28 gstopencv_cargs += ['-DOPENCV_PREFIX="' + opencv_prefix + '"'] 26 gstopencv_cargs += ['-DOPENCV_PREFIX="' + opencv_prefix + '"']
29 27
28+ pkgconf_sysroot = run_command(python3, '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip()
29+ opencv_prefix = pkgconf_sysroot + opencv_prefix
30+
30 # Check the data dir used by opencv for its xml data files 31 # Check the data dir used by opencv for its xml data files
31 # Use prefix from pkg-config to be compatible with cross-compilation 32 # Use prefix from pkg-config to be compatible with cross-compilation
32- r = run_command('test', '-d', opencv_prefix + '/share/opencv') 33 r = run_command('test', '-d', opencv_prefix + '/share/opencv', check: false)
33+ r = run_command('test', '-d', pkgconf_sysroot + opencv_prefix + '/share/opencv')
34 if r.returncode() == 0
35 gstopencv_cargs += '-DOPENCV_PATH_NAME="opencv"'
36 else
37- r = run_command('test', '-d', opencv_prefix + '/share/OpenCV')
38+ r = run_command('test', '-d', pkgconf_sysroot + opencv_prefix + '/share/OpenCV')
39 if r.returncode() == 0
40 gstopencv_cargs += '-DOPENCV_PATH_NAME="OpenCV"'
41 else
42- r = run_command('test', '-d', opencv_prefix + '/share/opencv4')
43+ r = run_command('test', '-d', pkgconf_sysroot + opencv_prefix + '/share/opencv4')
44 if r.returncode() == 0
45 gstopencv_cargs += '-DOPENCV_PATH_NAME="opencv4"'
46 else
47--
482.28.0
49
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch
deleted file mode 100644
index cb3bb7d361..0000000000
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch
+++ /dev/null
@@ -1,31 +0,0 @@
1From 1f00d5026118ebd48e4ccf83d32d67155c4e7f60 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Wed, 30 Dec 2020 16:37:47 +0800
4Subject: [PATCH] msdk: fix includedir path
5
6In cross compilation, need to prepend PKG_CONFIG_SYSROOT_DIR to the dir path.
7
8Upstream-Status: Inappropriate [OE-specific]
9
10Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
11---
12 sys/msdk/meson.build | 2 ++
13 1 file changed, 2 insertions(+)
14
15diff --git a/sys/msdk/meson.build b/sys/msdk/meson.build
16index 6346c9451..068f38548 100644
17--- a/sys/msdk/meson.build
18+++ b/sys/msdk/meson.build
19@@ -40,7 +40,9 @@ endif
20
21 mfx_dep = dependency('libmfx', required: false)
22 if mfx_dep.found()
23+ pkgconf_sysroot = run_command(python3, '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip()
24 mfx_incdir = mfx_dep.get_pkgconfig_variable('includedir')
25+ mfx_incdir = pkgconf_sysroot + mfx_incdir
26 mfx_inc = []
27 else
28 # Old versions of MediaSDK don't provide a pkg-config file
29--
302.17.1
31
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.3.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.22.11.bb
index b1e3664cbf..523ee7a5ae 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.3.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.22.11.bb
@@ -1,21 +1,20 @@
1require gstreamer1.0-plugins-common.inc 1require gstreamer1.0-plugins-common.inc
2require gstreamer1.0-plugins-license.inc
2 3
3DESCRIPTION = "'Bad' GStreamer plugins and helper libraries " 4SUMMARY = "'Bad' GStreamer plugins and helper libraries "
4HOMEPAGE = "https://gstreamer.freedesktop.org/" 5HOMEPAGE = "https://gstreamer.freedesktop.org/"
5BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues" 6BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues"
6 7
7SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \ 8SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \
8 file://0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch \ 9 file://0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch \
9 file://0002-avoid-including-sys-poll.h-directly.patch \ 10 file://0002-avoid-including-sys-poll.h-directly.patch \
10 file://0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch \
11 file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \ 11 file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \
12 file://0005-msdk-fix-includedir-path.patch \
13 " 12 "
14SRC_URI[sha256sum] = "b7e34b6b86272588fbd8b314dadfa6ceff895198cfb59e2950378e9e31ff22e0" 13SRC_URI[sha256sum] = "808d3b33fc4c71aeb2561c364a87c2e8a3e2343319a83244c8391be4b09499c8"
15 14
16S = "${WORKDIR}/gst-plugins-bad-${PV}" 15S = "${WORKDIR}/gst-plugins-bad-${PV}"
17 16
18LICENSE = "GPLv2+ & LGPLv2+ & LGPLv2.1+" 17LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
19LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" 18LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
20 19
21DEPENDS += "gstreamer1.0-plugins-base" 20DEPENDS += "gstreamer1.0-plugins-base"
@@ -25,15 +24,17 @@ inherit gobject-introspection
25PACKAGECONFIG ??= " \ 24PACKAGECONFIG ??= " \
26 ${GSTREAMER_ORC} \ 25 ${GSTREAMER_ORC} \
27 ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \ 26 ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
28 ${@bb.utils.filter('DISTRO_FEATURES', 'directfb vulkan', d)} \ 27 ${@bb.utils.filter('DISTRO_FEATURES', 'directfb vulkan x11', d)} \
29 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \ 28 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \
30 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)} \ 29 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)} \
31 bz2 closedcaption curl dash dtls hls rsvg sbc smoothstreaming sndfile \ 30 bz2 closedcaption curl dash dtls hls openssl sbc smoothstreaming \
32 ttml uvch264 webp \ 31 sndfile ttml uvch264 webp \
32 ${@bb.utils.contains('TUNE_FEATURES', 'mx32', '', 'rsvg', d)} \
33" 33"
34 34
35PACKAGECONFIG[aom] = "-Daom=enabled,-Daom=disabled,aom" 35PACKAGECONFIG[aom] = "-Daom=enabled,-Daom=disabled,aom"
36PACKAGECONFIG[assrender] = "-Dassrender=enabled,-Dassrender=disabled,libass" 36PACKAGECONFIG[assrender] = "-Dassrender=enabled,-Dassrender=disabled,libass"
37PACKAGECONFIG[avtp] = "-Davtp=enabled,-Davtp=disabled,libavtp"
37PACKAGECONFIG[bluez] = "-Dbluez=enabled,-Dbluez=disabled,bluez5" 38PACKAGECONFIG[bluez] = "-Dbluez=enabled,-Dbluez=disabled,bluez5"
38PACKAGECONFIG[bz2] = "-Dbz2=enabled,-Dbz2=disabled,bzip2" 39PACKAGECONFIG[bz2] = "-Dbz2=enabled,-Dbz2=disabled,bzip2"
39PACKAGECONFIG[closedcaption] = "-Dclosedcaption=enabled,-Dclosedcaption=disabled,pango cairo" 40PACKAGECONFIG[closedcaption] = "-Dclosedcaption=enabled,-Dclosedcaption=disabled,pango cairo"
@@ -45,18 +46,21 @@ PACKAGECONFIG[dtls] = "-Ddtls=enabled,-Ddtls=disabled,openssl"
45PACKAGECONFIG[faac] = "-Dfaac=enabled,-Dfaac=disabled,faac" 46PACKAGECONFIG[faac] = "-Dfaac=enabled,-Dfaac=disabled,faac"
46PACKAGECONFIG[faad] = "-Dfaad=enabled,-Dfaad=disabled,faad2" 47PACKAGECONFIG[faad] = "-Dfaad=enabled,-Dfaad=disabled,faad2"
47PACKAGECONFIG[fluidsynth] = "-Dfluidsynth=enabled,-Dfluidsynth=disabled,fluidsynth" 48PACKAGECONFIG[fluidsynth] = "-Dfluidsynth=enabled,-Dfluidsynth=disabled,fluidsynth"
48PACKAGECONFIG[hls] = "-Dhls=enabled -Dhls-crypto=nettle,-Dhls=disabled,nettle" 49PACKAGECONFIG[hls] = "-Dhls=enabled,-Dhls=disabled,"
50# Pick atleast one crypto backend below when enabling hls
51PACKAGECONFIG[nettle] = "-Dhls-crypto=nettle,,nettle"
52PACKAGECONFIG[openssl] = "-Dhls-crypto=openssl,,openssl"
53PACKAGECONFIG[gcrypt] = "-Dhls-crypto=libgcrypt,,libgcrypt"
49# the gl packageconfig enables OpenGL elements that haven't been ported 54# the gl packageconfig enables OpenGL elements that haven't been ported
50# to -base yet. They depend on the gstgl library in -base, so we do 55# to -base yet. They depend on the gstgl library in -base, so we do
51# not add GL dependencies here, since these are taken care of in -base. 56# not add GL dependencies here, since these are taken care of in -base.
52PACKAGECONFIG[gl] = "-Dgl=enabled,-Dgl=disabled," 57PACKAGECONFIG[gl] = "-Dgl=enabled,-Dgl=disabled,"
53PACKAGECONFIG[kms] = "-Dkms=enabled,-Dkms=disabled,libdrm" 58PACKAGECONFIG[kms] = "-Dkms=enabled,-Dkms=disabled,libdrm"
54PACKAGECONFIG[libde265] = "-Dlibde265=enabled,-Dlibde265=disabled,libde265" 59PACKAGECONFIG[libde265] = "-Dlibde265=enabled,-Dlibde265=disabled,libde265"
55PACKAGECONFIG[libmms] = "-Dlibmms=enabled,-Dlibmms=disabled,libmms"
56PACKAGECONFIG[libssh2] = "-Dcurl-ssh2=enabled,-Dcurl-ssh2=disabled,libssh2" 60PACKAGECONFIG[libssh2] = "-Dcurl-ssh2=enabled,-Dcurl-ssh2=disabled,libssh2"
57PACKAGECONFIG[lcms2] = "-Dcolormanagement=enabled,-Dcolormanagement=disabled,lcms" 61PACKAGECONFIG[lcms2] = "-Dcolormanagement=enabled,-Dcolormanagement=disabled,lcms"
58PACKAGECONFIG[modplug] = "-Dmodplug=enabled,-Dmodplug=disabled,libmodplug" 62PACKAGECONFIG[modplug] = "-Dmodplug=enabled,-Dmodplug=disabled,libmodplug"
59PACKAGECONFIG[msdk] = "-Dmsdk=enabled,-Dmsdk=disabled,intel-mediasdk" 63PACKAGECONFIG[msdk] = "-Dmsdk=enabled -Dmfx_api=oneVPL,-Dmsdk=disabled,onevpl-intel-gpu"
60PACKAGECONFIG[neon] = "-Dneon=enabled,-Dneon=disabled,neon" 64PACKAGECONFIG[neon] = "-Dneon=enabled,-Dneon=disabled,neon"
61PACKAGECONFIG[openal] = "-Dopenal=enabled,-Dopenal=disabled,openal-soft" 65PACKAGECONFIG[openal] = "-Dopenal=enabled,-Dopenal=disabled,openal-soft"
62PACKAGECONFIG[opencv] = "-Dopencv=enabled,-Dopencv=disabled,opencv" 66PACKAGECONFIG[opencv] = "-Dopencv=enabled,-Dopencv=disabled,opencv"
@@ -78,6 +82,8 @@ PACKAGECONFIG[srtp] = "-Dsrtp=enabled,-Dsrtp=disabled,libsrtp"
78PACKAGECONFIG[tinyalsa] = "-Dtinyalsa=enabled,-Dtinyalsa=disabled,tinyalsa" 82PACKAGECONFIG[tinyalsa] = "-Dtinyalsa=enabled,-Dtinyalsa=disabled,tinyalsa"
79PACKAGECONFIG[ttml] = "-Dttml=enabled,-Dttml=disabled,libxml2 pango cairo" 83PACKAGECONFIG[ttml] = "-Dttml=enabled,-Dttml=disabled,libxml2 pango cairo"
80PACKAGECONFIG[uvch264] = "-Duvch264=enabled,-Duvch264=disabled,libusb1 libgudev" 84PACKAGECONFIG[uvch264] = "-Duvch264=enabled,-Duvch264=disabled,libusb1 libgudev"
85# this enables support for stateless V4L2 mem2mem codecs, which is a newer form of
86# V4L2 codec; the V4L2 code in -base supports the older stateful V4L2 mem2mem codecs
81PACKAGECONFIG[v4l2codecs] = "-Dv4l2codecs=enabled,-Dv4l2codecs=disabled,libgudev" 87PACKAGECONFIG[v4l2codecs] = "-Dv4l2codecs=enabled,-Dv4l2codecs=disabled,libgudev"
82PACKAGECONFIG[va] = "-Dva=enabled,-Dva=disabled,libva" 88PACKAGECONFIG[va] = "-Dva=enabled,-Dva=disabled,libva"
83PACKAGECONFIG[voaacenc] = "-Dvoaacenc=enabled,-Dvoaacenc=disabled,vo-aacenc" 89PACKAGECONFIG[voaacenc] = "-Dvoaacenc=enabled,-Dvoaacenc=disabled,vo-aacenc"
@@ -88,10 +94,15 @@ PACKAGECONFIG[webp] = "-Dwebp=enabled,-Dwebp=disabled,libwebp"
88PACKAGECONFIG[webrtc] = "-Dwebrtc=enabled,-Dwebrtc=disabled,libnice" 94PACKAGECONFIG[webrtc] = "-Dwebrtc=enabled,-Dwebrtc=disabled,libnice"
89PACKAGECONFIG[webrtcdsp] = "-Dwebrtcdsp=enabled,-Dwebrtcdsp=disabled,webrtc-audio-processing" 95PACKAGECONFIG[webrtcdsp] = "-Dwebrtcdsp=enabled,-Dwebrtcdsp=disabled,webrtc-audio-processing"
90PACKAGECONFIG[zbar] = "-Dzbar=enabled,-Dzbar=disabled,zbar" 96PACKAGECONFIG[zbar] = "-Dzbar=enabled,-Dzbar=disabled,zbar"
97PACKAGECONFIG[x11] = "-Dx11=enabled,-Dx11=disabled,libxcb libxkbcommon"
91PACKAGECONFIG[x265] = "-Dx265=enabled,-Dx265=disabled,x265" 98PACKAGECONFIG[x265] = "-Dx265=enabled,-Dx265=disabled,x265"
92 99
100GSTREAMER_GPL = "${@bb.utils.filter('PACKAGECONFIG', 'faad resindvd x265', d)}"
101
93EXTRA_OEMESON += " \ 102EXTRA_OEMESON += " \
94 -Ddoc=disabled \ 103 -Ddoc=disabled \
104 -Daes=enabled \
105 -Dcodecalpha=enabled \
95 -Ddecklink=enabled \ 106 -Ddecklink=enabled \
96 -Ddvb=enabled \ 107 -Ddvb=enabled \
97 -Dfbdev=enabled \ 108 -Dfbdev=enabled \
@@ -100,7 +111,7 @@ EXTRA_OEMESON += " \
100 -Dtranscode=enabled \ 111 -Dtranscode=enabled \
101 -Dandroidmedia=disabled \ 112 -Dandroidmedia=disabled \
102 -Dapplemedia=disabled \ 113 -Dapplemedia=disabled \
103 -Davtp=disabled \ 114 -Dasio=disabled \
104 -Dbs2b=disabled \ 115 -Dbs2b=disabled \
105 -Dchromaprint=disabled \ 116 -Dchromaprint=disabled \
106 -Dd3dvideosink=disabled \ 117 -Dd3dvideosink=disabled \
@@ -110,10 +121,12 @@ EXTRA_OEMESON += " \
110 -Dfdkaac=disabled \ 121 -Dfdkaac=disabled \
111 -Dflite=disabled \ 122 -Dflite=disabled \
112 -Dgme=disabled \ 123 -Dgme=disabled \
124 -Dgs=disabled \
113 -Dgsm=disabled \ 125 -Dgsm=disabled \
114 -Diqa=disabled \ 126 -Diqa=disabled \
115 -Dkate=disabled \ 127 -Dkate=disabled \
116 -Dladspa=disabled \ 128 -Dladspa=disabled \
129 -Dldac=disabled \
117 -Dlv2=disabled \ 130 -Dlv2=disabled \
118 -Dmagicleap=disabled \ 131 -Dmagicleap=disabled \
119 -Dmediafoundation=disabled \ 132 -Dmediafoundation=disabled \
@@ -122,10 +135,12 @@ EXTRA_OEMESON += " \
122 -Dmplex=disabled \ 135 -Dmplex=disabled \
123 -Dmusepack=disabled \ 136 -Dmusepack=disabled \
124 -Dnvcodec=disabled \ 137 -Dnvcodec=disabled \
125 -Dofa=disabled \
126 -Dopenexr=disabled \ 138 -Dopenexr=disabled \
127 -Dopenni2=disabled \ 139 -Dopenni2=disabled \
140 -Dopenaptx=disabled \
128 -Dopensles=disabled \ 141 -Dopensles=disabled \
142 -Donnx=disabled \
143 -Dqroverlay=disabled \
129 -Dsoundtouch=disabled \ 144 -Dsoundtouch=disabled \
130 -Dspandsp=disabled \ 145 -Dspandsp=disabled \
131 -Dsvthevcenc=disabled \ 146 -Dsvthevcenc=disabled \
@@ -141,11 +156,10 @@ EXTRA_OEMESON += " \
141 156
142export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}" 157export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}"
143 158
144ARM_INSTRUCTION_SET_armv4 = "arm" 159ARM_INSTRUCTION_SET:armv4 = "arm"
145ARM_INSTRUCTION_SET_armv5 = "arm" 160ARM_INSTRUCTION_SET:armv5 = "arm"
146
147FILES_${PN}-freeverb += "${datadir}/gstreamer-1.0/presets/GstFreeverb.prs"
148FILES_${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*"
149FILES_${PN}-transcode += "${datadir}/gstreamer-1.0/encoding-profiles"
150FILES_${PN}-voamrwbenc += "${datadir}/gstreamer-1.0/presets/GstVoAmrwbEnc.prs"
151 161
162FILES:${PN}-freeverb += "${datadir}/gstreamer-1.0/presets/GstFreeverb.prs"
163FILES:${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*"
164FILES:${PN}-transcode += "${datadir}/gstreamer-1.0/encoding-profiles"
165FILES:${PN}-voamrwbenc += "${datadir}/gstreamer-1.0/presets/GstVoAmrwbEnc.prs"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-ENGR00312515-get-caps-from-src-pad-when-query-caps.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-ENGR00312515-get-caps-from-src-pad-when-query-caps.patch
index d5d9838372..34c99ded42 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-ENGR00312515-get-caps-from-src-pad-when-query-caps.patch
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-ENGR00312515-get-caps-from-src-pad-when-query-caps.patch
@@ -1,13 +1,14 @@
1From f9d48cd85ee68207733b1b91a00453462c33524a Mon Sep 17 00:00:00 2001 1From 63fe5a7b4ef70e2c490bad3b0838329935a8d77c Mon Sep 17 00:00:00 2001
2From: zhouming <b42586@freescale.com> 2From: zhouming <b42586@freescale.com>
3Date: Wed, 14 May 2014 10:16:20 +0800 3Date: Wed, 14 May 2014 10:16:20 +0800
4Subject: [PATCH 1/4] ENGR00312515: get caps from src pad when query caps 4Subject: [PATCH] ENGR00312515: get caps from src pad when query caps
5 5
6https://bugzilla.gnome.org/show_bug.cgi?id=728312 6https://bugzilla.gnome.org/show_bug.cgi?id=728312
7 7
8Upstream-Status: Pending 8Upstream-Status: Pending
9 9
10Signed-off-by: zhouming <b42586@freescale.com> 10Signed-off-by: zhouming <b42586@freescale.com>
11
11--- 12---
12 gst-libs/gst/tag/gsttagdemux.c | 13 +++++++++++++ 13 gst-libs/gst/tag/gsttagdemux.c | 13 +++++++++++++
13 1 file changed, 13 insertions(+) 14 1 file changed, 13 insertions(+)
@@ -16,10 +17,10 @@ Signed-off-by: zhouming <b42586@freescale.com>
16diff --git a/gst-libs/gst/tag/gsttagdemux.c b/gst-libs/gst/tag/gsttagdemux.c 17diff --git a/gst-libs/gst/tag/gsttagdemux.c b/gst-libs/gst/tag/gsttagdemux.c
17old mode 100644 18old mode 100644
18new mode 100755 19new mode 100755
19index f545857..62d10ef 20index 173da37..2b7f34c
20--- a/gst-libs/gst/tag/gsttagdemux.c 21--- a/gst-libs/gst/tag/gsttagdemux.c
21+++ b/gst-libs/gst/tag/gsttagdemux.c 22+++ b/gst-libs/gst/tag/gsttagdemux.c
22@@ -1777,6 +1777,19 @@ gst_tag_demux_pad_query (GstPad * pad, GstObject * parent, GstQuery * query) 23@@ -1796,6 +1796,19 @@ gst_tag_demux_pad_query (GstPad * pad, GstObject * parent, GstQuery * query)
23 } 24 }
24 break; 25 break;
25 } 26 }
@@ -39,6 +40,3 @@ index f545857..62d10ef
39 default: 40 default:
40 res = gst_pad_query_default (pad, parent, query); 41 res = gst_pad_query_default (pad, parent, query);
41 break; 42 break;
42--
432.28.0
44
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-ssaparse-enhance-SSA-text-lines-parsing.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-ssaparse-enhance-SSA-text-lines-parsing.patch
index e453a500c9..2adeae93d6 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-ssaparse-enhance-SSA-text-lines-parsing.patch
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-ssaparse-enhance-SSA-text-lines-parsing.patch
@@ -1,14 +1,15 @@
1From f587861bbe12ad0b10370f835592746aafedbf56 Mon Sep 17 00:00:00 2001 1From 7bf9525528c8f4a47413d7f82214d76f95f0c5f6 Mon Sep 17 00:00:00 2001
2From: Mingke Wang <mingke.wang@freescale.com> 2From: Mingke Wang <mingke.wang@freescale.com>
3Date: Thu, 19 Mar 2015 14:17:10 +0800 3Date: Thu, 19 Mar 2015 14:17:10 +0800
4Subject: [PATCH 2/4] ssaparse: enhance SSA text lines parsing. 4Subject: [PATCH] ssaparse: enhance SSA text lines parsing.
5 5
6some parser will pass in the original ssa text line which starts with "Dialog:" 6some parser will pass in the original ssa text line which starts with "Dialog:"
7and there's are maybe multiple Dialog lines in one input buffer. 7and there's are maybe multiple Dialog lines in one input buffer.
8 8
9Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=747496] 9Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/178]
10 10
11Signed-off-by: Mingke Wang <mingke.wang@freescale.com> 11Signed-off-by: Mingke Wang <mingke.wang@freescale.com>
12
12--- 13---
13 gst/subparse/gstssaparse.c | 150 +++++++++++++++++++++++++++++++++---- 14 gst/subparse/gstssaparse.c | 150 +++++++++++++++++++++++++++++++++----
14 1 file changed, 134 insertions(+), 16 deletions(-) 15 1 file changed, 134 insertions(+), 16 deletions(-)
@@ -17,10 +18,10 @@ Signed-off-by: Mingke Wang <mingke.wang@freescale.com>
17diff --git a/gst/subparse/gstssaparse.c b/gst/subparse/gstssaparse.c 18diff --git a/gst/subparse/gstssaparse.c b/gst/subparse/gstssaparse.c
18old mode 100644 19old mode 100644
19new mode 100755 20new mode 100755
20index c849c08..4b9636c 21index d6fdb9c..5ebe678
21--- a/gst/subparse/gstssaparse.c 22--- a/gst/subparse/gstssaparse.c
22+++ b/gst/subparse/gstssaparse.c 23+++ b/gst/subparse/gstssaparse.c
23@@ -262,6 +262,7 @@ gst_ssa_parse_remove_override_codes (GstSsaParse * parse, gchar * txt) 24@@ -270,6 +270,7 @@ gst_ssa_parse_remove_override_codes (GstSsaParse * parse, gchar * txt)
24 * gst_ssa_parse_push_line: 25 * gst_ssa_parse_push_line:
25 * @parse: caller element 26 * @parse: caller element
26 * @txt: text to push 27 * @txt: text to push
@@ -28,7 +29,7 @@ index c849c08..4b9636c
28 * @start: timestamp for the buffer 29 * @start: timestamp for the buffer
29 * @duration: duration for the buffer 30 * @duration: duration for the buffer
30 * 31 *
31@@ -271,27 +272,133 @@ gst_ssa_parse_remove_override_codes (GstSsaParse * parse, gchar * txt) 32@@ -279,27 +280,133 @@ gst_ssa_parse_remove_override_codes (GstSsaParse * parse, gchar * txt)
32 * Returns: result of the push of the created buffer 33 * Returns: result of the push of the created buffer
33 */ 34 */
34 static GstFlowReturn 35 static GstFlowReturn
@@ -173,7 +174,7 @@ index c849c08..4b9636c
173 GST_LOG_OBJECT (parse, "Text : %s", t); 174 GST_LOG_OBJECT (parse, "Text : %s", t);
174 175
175 if (gst_ssa_parse_remove_override_codes (parse, t)) { 176 if (gst_ssa_parse_remove_override_codes (parse, t)) {
176@@ -309,13 +416,22 @@ gst_ssa_parse_push_line (GstSsaParse * parse, gchar * txt, 177@@ -317,13 +424,22 @@ gst_ssa_parse_push_line (GstSsaParse * parse, gchar * txt,
177 gst_buffer_fill (buf, 0, escaped, len + 1); 178 gst_buffer_fill (buf, 0, escaped, len + 1);
178 gst_buffer_set_size (buf, len); 179 gst_buffer_set_size (buf, len);
179 g_free (escaped); 180 g_free (escaped);
@@ -200,7 +201,7 @@ index c849c08..4b9636c
200 201
201 ret = gst_pad_push (parse->srcpad, buf); 202 ret = gst_pad_push (parse->srcpad, buf);
202 203
203@@ -335,6 +451,7 @@ gst_ssa_parse_chain (GstPad * sinkpad, GstObject * parent, GstBuffer * buf) 204@@ -343,6 +459,7 @@ gst_ssa_parse_chain (GstPad * sinkpad, GstObject * parent, GstBuffer * buf)
204 GstClockTime ts; 205 GstClockTime ts;
205 gchar *txt; 206 gchar *txt;
206 GstMapInfo map; 207 GstMapInfo map;
@@ -208,7 +209,7 @@ index c849c08..4b9636c
208 209
209 if (G_UNLIKELY (!parse->framed)) 210 if (G_UNLIKELY (!parse->framed))
210 goto not_framed; 211 goto not_framed;
211@@ -352,13 +469,14 @@ gst_ssa_parse_chain (GstPad * sinkpad, GstObject * parent, GstBuffer * buf) 212@@ -360,13 +477,14 @@ gst_ssa_parse_chain (GstPad * sinkpad, GstObject * parent, GstBuffer * buf)
212 /* make double-sure it's 0-terminated and all */ 213 /* make double-sure it's 0-terminated and all */
213 gst_buffer_map (buf, &map, GST_MAP_READ); 214 gst_buffer_map (buf, &map, GST_MAP_READ);
214 txt = g_strndup ((gchar *) map.data, map.size); 215 txt = g_strndup ((gchar *) map.data, map.size);
@@ -224,6 +225,3 @@ index c849c08..4b9636c
224 225
225 if (ret != GST_FLOW_OK && GST_CLOCK_TIME_IS_VALID (ts)) { 226 if (ret != GST_FLOW_OK && GST_CLOCK_TIME_IS_VALID (ts)) {
226 GstSegment segment; 227 GstSegment segment;
227--
2282.28.0
229
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-viv-fb-Make-sure-config.h-is-included.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-viv-fb-Make-sure-config.h-is-included.patch
index 2af83ff8b9..a605533be8 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-viv-fb-Make-sure-config.h-is-included.patch
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-viv-fb-Make-sure-config.h-is-included.patch
@@ -1,19 +1,20 @@
1From 153f3b83a3fed77785bd1420bed8bbafa2d791b3 Mon Sep 17 00:00:00 2001 1From 2b07840122bc2e83bd23dad59aa80d9479f2e1e4 Mon Sep 17 00:00:00 2001
2From: Carlos Rafael Giani <crg7475@mailbox.org> 2From: Carlos Rafael Giani <crg7475@mailbox.org>
3Date: Tue, 21 May 2019 14:01:11 +0200 3Date: Tue, 21 May 2019 14:01:11 +0200
4Subject: [PATCH 3/4] viv-fb: Make sure config.h is included 4Subject: [PATCH] viv-fb: Make sure config.h is included
5 5
6This prevents build errors due to missing GST_API_* symbols 6This prevents build errors due to missing GST_API_* symbols
7 7
8Upstream-Status: Pending 8Upstream-Status: Pending
9 9
10Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org> 10Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
11
11--- 12---
12 gst-libs/gst/gl/gl-prelude.h | 4 ++++ 13 gst-libs/gst/gl/gl-prelude.h | 4 ++++
13 1 file changed, 4 insertions(+) 14 1 file changed, 4 insertions(+)
14 15
15diff --git a/gst-libs/gst/gl/gl-prelude.h b/gst-libs/gst/gl/gl-prelude.h 16diff --git a/gst-libs/gst/gl/gl-prelude.h b/gst-libs/gst/gl/gl-prelude.h
16index 05e1f62..96ce5e6 100644 17index 85fca5a..946c729 100644
17--- a/gst-libs/gst/gl/gl-prelude.h 18--- a/gst-libs/gst/gl/gl-prelude.h
18+++ b/gst-libs/gst/gl/gl-prelude.h 19+++ b/gst-libs/gst/gl/gl-prelude.h
19@@ -22,6 +22,10 @@ 20@@ -22,6 +22,10 @@
@@ -27,6 +28,3 @@ index 05e1f62..96ce5e6 100644
27 #include <gst/gst.h> 28 #include <gst/gst.h>
28 29
29 #ifdef BUILDING_GST_GL 30 #ifdef BUILDING_GST_GL
30--
312.28.0
32
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-glimagesink-Downrank-to-marginal.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-glimagesink-Downrank-to-marginal.patch
deleted file mode 100644
index f45ea65ef3..0000000000
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-glimagesink-Downrank-to-marginal.patch
+++ /dev/null
@@ -1,32 +0,0 @@
1From 79841a02ee754eba736cb32aaf2ed2b2fc0483d4 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Thu, 24 Sep 2015 19:47:32 +0300
4Subject: [PATCH 4/4] glimagesink: Downrank to marginal
5
6On desktop, where there is good OpenGL, xvimagesink will come up first,
7on other platforms, OpenGL can't be trusted because it's either software (like
8in a VM) or broken (like on embedded)., so let ximagesink come above.
9
10Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=751684]
11
12Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
13---
14 ext/gl/gstopengl.c | 2 +-
15 1 file changed, 1 insertion(+), 1 deletion(-)
16
17diff --git a/ext/gl/gstopengl.c b/ext/gl/gstopengl.c
18index 302e845..463be9c 100644
19--- a/ext/gl/gstopengl.c
20+++ b/ext/gl/gstopengl.c
21@@ -127,7 +127,7 @@ plugin_init (GstPlugin * plugin)
22 #endif
23
24 if (!gst_element_register (plugin, "glimagesink",
25- GST_RANK_SECONDARY, gst_gl_image_sink_bin_get_type ())) {
26+ GST_RANK_MARGINAL, gst_gl_image_sink_bin_get_type ())) {
27 return FALSE;
28 }
29
30--
312.28.0
32
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.3.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.22.11.bb
index 86b0f2790e..7aa10eb646 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.3.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.22.11.bb
@@ -1,18 +1,17 @@
1require gstreamer1.0-plugins-common.inc 1require gstreamer1.0-plugins-common.inc
2 2
3DESCRIPTION = "'Base' GStreamer plugins and helper libraries" 3SUMMARY = "'Base' GStreamer plugins and helper libraries"
4HOMEPAGE = "https://gstreamer.freedesktop.org/" 4HOMEPAGE = "https://gstreamer.freedesktop.org/"
5BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues" 5BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues"
6LICENSE = "GPLv2+ & LGPLv2+" 6LICENSE = "LGPL-2.1-or-later"
7LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d" 7LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770"
8 8
9SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-${PV}.tar.xz \ 9SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-${PV}.tar.xz \
10 file://0001-ENGR00312515-get-caps-from-src-pad-when-query-caps.patch \ 10 file://0001-ENGR00312515-get-caps-from-src-pad-when-query-caps.patch \
11 file://0003-viv-fb-Make-sure-config.h-is-included.patch \ 11 file://0003-viv-fb-Make-sure-config.h-is-included.patch \
12 file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch \ 12 file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch \
13 file://0004-glimagesink-Downrank-to-marginal.patch \
14 " 13 "
15SRC_URI[sha256sum] = "dbfa20283848f0347a223dd8523dfb62e09e5220b21b1d157a8b0c8b67ba9f52" 14SRC_URI[sha256sum] = "65eaf72296cc5edc985695a4d80affc931e64a79f4879d05615854f7a2cf5bd1"
16 15
17S = "${WORKDIR}/gst-plugins-base-${PV}" 16S = "${WORKDIR}/gst-plugins-base-${PV}"
18 17
@@ -20,11 +19,10 @@ DEPENDS += "iso-codes util-linux zlib"
20 19
21inherit gobject-introspection 20inherit gobject-introspection
22 21
23PACKAGES_DYNAMIC =+ "^libgst.*"
24
25# opengl packageconfig factored out to make it easy for distros 22# opengl packageconfig factored out to make it easy for distros
26# and BSP layers to choose OpenGL APIs/platforms/window systems 23# and BSP layers to choose OpenGL APIs/platforms/window systems
27PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}" 24PACKAGECONFIG_X11 = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'opengl glx', '', d)}"
25PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl ${PACKAGECONFIG_X11}', '', d)}"
28 26
29PACKAGECONFIG ??= " \ 27PACKAGECONFIG ??= " \
30 ${GSTREAMER_ORC} \ 28 ${GSTREAMER_ORC} \
@@ -35,7 +33,7 @@ PACKAGECONFIG ??= " \
35" 33"
36 34
37OPENGL_APIS = 'opengl gles2' 35OPENGL_APIS = 'opengl gles2'
38OPENGL_PLATFORMS = 'egl' 36OPENGL_PLATFORMS = 'egl glx'
39 37
40X11DEPENDS = "virtual/libx11 libsm libxrender libxv" 38X11DEPENDS = "virtual/libx11 libsm libxrender libxv"
41X11ENABLEOPTS = "-Dx11=enabled -Dxvideo=enabled -Dxshm=enabled" 39X11ENABLEOPTS = "-Dx11=enabled -Dxvideo=enabled -Dxshm=enabled"
@@ -43,11 +41,15 @@ X11DISABLEOPTS = "-Dx11=disabled -Dxvideo=disabled -Dxshm=disabled"
43 41
44PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib" 42PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib"
45PACKAGECONFIG[cdparanoia] = "-Dcdparanoia=enabled,-Dcdparanoia=disabled,cdparanoia" 43PACKAGECONFIG[cdparanoia] = "-Dcdparanoia=enabled,-Dcdparanoia=disabled,cdparanoia"
44PACKAGECONFIG[graphene] = "-Dgl-graphene=enabled,-Dgl-graphene=disabled,graphene"
46PACKAGECONFIG[jpeg] = "-Dgl-jpeg=enabled,-Dgl-jpeg=disabled,jpeg" 45PACKAGECONFIG[jpeg] = "-Dgl-jpeg=enabled,-Dgl-jpeg=disabled,jpeg"
47PACKAGECONFIG[ogg] = "-Dogg=enabled,-Dogg=disabled,libogg" 46PACKAGECONFIG[ogg] = "-Dogg=enabled,-Dogg=disabled,libogg"
48PACKAGECONFIG[opus] = "-Dopus=enabled,-Dopus=disabled,libopus" 47PACKAGECONFIG[opus] = "-Dopus=enabled,-Dopus=disabled,libopus"
49PACKAGECONFIG[pango] = "-Dpango=enabled,-Dpango=disabled,pango" 48PACKAGECONFIG[pango] = "-Dpango=enabled,-Dpango=disabled,pango"
50PACKAGECONFIG[png] = "-Dgl-png=enabled,-Dgl-png=disabled,libpng" 49PACKAGECONFIG[png] = "-Dgl-png=enabled,-Dgl-png=disabled,libpng"
50# This enables Qt5 QML examples in -base. The Qt5 GStreamer
51# qmlglsink and qmlglsrc plugins still exist in -good.
52PACKAGECONFIG[qt5] = "-Dqt5=enabled,-Dqt5=disabled,qtbase qtdeclarative qtbase-native"
51PACKAGECONFIG[theora] = "-Dtheora=enabled,-Dtheora=disabled,libtheora" 53PACKAGECONFIG[theora] = "-Dtheora=enabled,-Dtheora=disabled,libtheora"
52PACKAGECONFIG[tremor] = "-Dtremor=enabled,-Dtremor=disabled,tremor" 54PACKAGECONFIG[tremor] = "-Dtremor=enabled,-Dtremor=disabled,tremor"
53PACKAGECONFIG[visual] = "-Dlibvisual=enabled,-Dlibvisual=disabled,libvisual" 55PACKAGECONFIG[visual] = "-Dlibvisual=enabled,-Dlibvisual=disabled,libvisual"
@@ -60,28 +62,25 @@ PACKAGECONFIG[gles2] = ",,virtual/libgles2"
60 62
61# OpenGL platform packageconfigs 63# OpenGL platform packageconfigs
62PACKAGECONFIG[egl] = ",,virtual/egl" 64PACKAGECONFIG[egl] = ",,virtual/egl"
65PACKAGECONFIG[glx] = ",,virtual/libgl"
63 66
64# OpenGL window systems (except for X11) 67# OpenGL window systems (except for X11)
65PACKAGECONFIG[gbm] = ",,virtual/libgbm libgudev libdrm" 68PACKAGECONFIG[gbm] = ",,virtual/libgbm libgudev libdrm"
66PACKAGECONFIG[wayland] = ",,wayland-native wayland wayland-protocols libdrm" 69PACKAGECONFIG[wayland] = ",,wayland-native wayland wayland-protocols libdrm"
67PACKAGECONFIG[dispmanx] = ",,virtual/libomxil" 70PACKAGECONFIG[dispmanx] = ",,virtual/libomxil"
71PACKAGECONFIG[viv-fb] = ",,virtual/libgles2 virtual/libg2d"
68 72
69OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'x11', ' x11', '', d)}" 73OPENGL_WINSYS = "${@bb.utils.filter('PACKAGECONFIG', 'x11 gbm wayland dispmanx egl viv-fb', d)}"
70OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'gbm', ' gbm', '', d)}"
71OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'wayland', ' wayland', '', d)}"
72OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'dispmanx', ' dispmanx', '', d)}"
73OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'egl', ' egl', '', d)}"
74 74
75EXTRA_OEMESON += " \ 75EXTRA_OEMESON += " \
76 -Ddoc=disabled \ 76 -Ddoc=disabled \
77 -Dgl-graphene=disabled \
78 ${@get_opengl_cmdline_list('gl_api', d.getVar('OPENGL_APIS'), d)} \ 77 ${@get_opengl_cmdline_list('gl_api', d.getVar('OPENGL_APIS'), d)} \
79 ${@get_opengl_cmdline_list('gl_platform', d.getVar('OPENGL_PLATFORMS'), d)} \ 78 ${@get_opengl_cmdline_list('gl_platform', d.getVar('OPENGL_PLATFORMS'), d)} \
80 ${@get_opengl_cmdline_list('gl_winsys', d.getVar('OPENGL_WINSYS'), d)} \ 79 ${@get_opengl_cmdline_list('gl_winsys', d.getVar('OPENGL_WINSYS'), d)} \
81" 80"
82 81
83FILES_${PN}-dev += "${libdir}/gstreamer-1.0/include/gst/gl/gstglconfig.h" 82FILES:${PN}-dev += "${libdir}/gstreamer-1.0/include/gst/gl/gstglconfig.h"
84FILES_${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict" 83FILES:${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict"
85 84
86def get_opengl_cmdline_list(switch_name, options, d): 85def get_opengl_cmdline_list(switch_name, options, d):
87 selected_options = [] 86 selected_options = []
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
index dba96e0f6e..54dd92873f 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
@@ -21,7 +21,7 @@ GSTREAMER_ORC ?= "orc"
21# workaround to disable orc on mips to fix the build failure 21# workaround to disable orc on mips to fix the build failure
22# {standard input}: Assembler messages: 22# {standard input}: Assembler messages:
23# {standard input}:46587: Error: branch out of range 23# {standard input}:46587: Error: branch out of range
24GSTREAMER_ORC_mips = "" 24GSTREAMER_ORC:mips = ""
25PACKAGECONFIG[orc] = "-Dorc=enabled,-Dorc=disabled,orc orc-native" 25PACKAGECONFIG[orc] = "-Dorc=enabled,-Dorc=disabled,orc orc-native"
26 26
27# TODO: put this in a gettext.bbclass patch (with variables to allow for 27# TODO: put this in a gettext.bbclass patch (with variables to allow for
@@ -45,6 +45,3 @@ EXTRA_OEMESON += " \
45 45
46GIR_MESON_ENABLE_FLAG = "enabled" 46GIR_MESON_ENABLE_FLAG = "enabled"
47GIR_MESON_DISABLE_FLAG = "disabled" 47GIR_MESON_DISABLE_FLAG = "disabled"
48
49# Dynamically generate packages for all enabled plugins
50PACKAGES_DYNAMIC = "^${PN}-.*"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-qt-include-ext-qt-gstqtgl.h-instead-of-gst-gl-gstglf.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-qt-include-ext-qt-gstqtgl.h-instead-of-gst-gl-gstglf.patch
deleted file mode 100644
index 788d752058..0000000000
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-qt-include-ext-qt-gstqtgl.h-instead-of-gst-gl-gstglf.patch
+++ /dev/null
@@ -1,56 +0,0 @@
1From bf8b2fa0f6870589d036f0f33c140a3f85b530a0 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 31 Mar 2020 21:23:28 -0700
4Subject: [PATCH] qt: include ext/qt/gstqtgl.h instead of gst/gl/gstglfuncs.h
5
6gst/gl/gstglfuncs.h is included via ext/qt/gstqtgl.h which has logic to
7prefer qt headers definitions for GLsync
8
9This helps in fixing build errors like below
10
11/mnt/b/yoe/build/tmp/work/cortexa7t2hf-neon-vfpv4-yoe-linux-gnueabi/gstreamer1.0-plugins-good/1.16.2-r0/recipe-sysroot/usr/include/QtGui/qopengles2ext.h:24:26: error: conflicting declaration 'typedef struct __GLsync* GLsync'
12 24 | typedef struct __GLsync *GLsync;
13 | ^~~~~~
14In file included from /mnt/b/yoe/build/tmp/work/cortexa7t2hf-neon-vfpv4-yoe-linux-gnueabi/gstreamer1.0-plugins-good/1.16.2-r0/recipe-sysroot/usr/include/gstreamer-1.0/gst/gl/gstglfuncs.h:84,
15 from ../gst-plugins-good-1.16.2/ext/qt/gstqsgtexture.cc:30:
16/mnt/b/yoe/build/tmp/work/cortexa7t2hf-neon-vfpv4-yoe-linux-gnueabi/gstreamer1.0-plugins-good/1.16.2-r0/recipe-sysroot/usr/include/gstreamer-1.0/gst/gl/glprototypes/gstgl_compat.h:40:18: note: previous declaration as 'typedef void* GLsync
17'
18 40 | typedef gpointer GLsync;
19 | ^~~~~~
20
21Upstream-Status: Pending
22Signed-off-by: Khem Raj <raj.khem@gmail.com>
23---
24 ext/qt/gstqsgtexture.cc | 2 +-
25 ext/qt/qtwindow.cc | 2 +-
26 2 files changed, 2 insertions(+), 2 deletions(-)
27
28diff --git a/ext/qt/gstqsgtexture.cc b/ext/qt/gstqsgtexture.cc
29index a05d26e..4cc9fc6 100644
30--- a/ext/qt/gstqsgtexture.cc
31+++ b/ext/qt/gstqsgtexture.cc
32@@ -27,7 +27,7 @@
33
34 #include <gst/video/video.h>
35 #include <gst/gl/gl.h>
36-#include <gst/gl/gstglfuncs.h>
37+#include <ext/qt/gstqtgl.h>
38 #include "gstqsgtexture.h"
39
40 #define GST_CAT_DEFAULT gst_qsg_texture_debug
41diff --git a/ext/qt/qtwindow.cc b/ext/qt/qtwindow.cc
42index 9360c33..0dfd3f1 100644
43--- a/ext/qt/qtwindow.cc
44+++ b/ext/qt/qtwindow.cc
45@@ -25,7 +25,7 @@
46 #include <stdio.h>
47
48 #include <gst/video/video.h>
49-#include <gst/gl/gstglfuncs.h>
50+#include <ext/qt/gstqtgl.h>
51 #include "qtwindow.h"
52 #include "gstqsgtexture.h"
53 #include "gstqtglutility.h"
54--
552.28.0
56
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-v4l2-Define-ioctl_req_t-for-posix-linux-case.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-v4l2-Define-ioctl_req_t-for-posix-linux-case.patch
new file mode 100644
index 0000000000..33bd4200f6
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-v4l2-Define-ioctl_req_t-for-posix-linux-case.patch
@@ -0,0 +1,38 @@
1From b77d4806fd5de50d0b017a3e6a19c5bfdef7b3e4 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 13 Feb 2023 12:47:31 -0800
4Subject: [PATCH] v4l2: Define ioctl_req_t for posix/linux case
5
6this is an issue seen with musl based linux distros e.g. alpine [1]
7musl is not going to change this since it breaks ABI/API interfaces
8Newer compilers are stringent ( e.g. clang16 ) which can now detect
9signature mismatches in function pointers too, existing code warned but
10did not error with older clang
11
12Fixes
13gstv4l2object.c:544:23: error: incompatible function pointer types assigning to 'gint (*)(gint, ioctl_req_t, ...)' (aka 'int (*)(int, unsigned long, ...)') from 'int (int, int, ...)' [-Wincompatible-function-pointer-types]
14 v4l2object->ioctl = ioctl;
15 ^ ~~~~~
16
17[1] https://gitlab.alpinelinux.org/alpine/aports/-/issues/7580
18
19Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3950]
20Signed-off-by: Khem Raj <raj.khem@gmail.com>
21
22---
23 sys/v4l2/gstv4l2object.h | 2 ++
24 1 file changed, 2 insertions(+)
25
26diff --git a/sys/v4l2/gstv4l2object.h b/sys/v4l2/gstv4l2object.h
27index d95b375..5223cbb 100644
28--- a/sys/v4l2/gstv4l2object.h
29+++ b/sys/v4l2/gstv4l2object.h
30@@ -76,6 +76,8 @@ typedef gboolean (*GstV4l2UpdateFpsFunction) (GstV4l2Object * v4l2object);
31 * 'unsigned long' for the 2nd parameter */
32 #ifdef __ANDROID__
33 typedef unsigned ioctl_req_t;
34+#elif defined(__linux__) && !defined(__GLIBC__) /* musl/linux */
35+typedef int ioctl_req_t;
36 #else
37 typedef gulong ioctl_req_t;
38 #endif
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.3.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.22.11.bb
index 93c6616c33..9ce3f73f7c 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.3.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.22.11.bb
@@ -1,30 +1,33 @@
1require gstreamer1.0-plugins-common.inc 1require gstreamer1.0-plugins-common.inc
2 2
3DESCRIPTION = "'Good' GStreamer plugins" 3SUMMARY = "'Good' GStreamer plugins"
4HOMEPAGE = "https://gstreamer.freedesktop.org/" 4HOMEPAGE = "https://gstreamer.freedesktop.org/"
5BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues" 5BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues"
6 6
7SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz \ 7SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz \
8 file://0001-qt-include-ext-qt-gstqtgl.h-instead-of-gst-gl-gstglf.patch \ 8 file://0001-v4l2-Define-ioctl_req_t-for-posix-linux-case.patch"
9 "
10 9
11SRC_URI[sha256sum] = "9b3b8e05d4d6073bf929fb33e2d8f74dd81ff21fa5b50c3273c78dfa2ab9c5cb" 10SRC_URI[sha256sum] = "6ddd032381827d31820540735f0004b429436b0bdac19aaeab44fa22faad52e2"
12 11
13S = "${WORKDIR}/gst-plugins-good-${PV}" 12S = "${WORKDIR}/gst-plugins-good-${PV}"
14 13
15LICENSE = "GPLv2+ & LGPLv2.1+" 14LICENSE = "LGPL-2.1-or-later"
16LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ 15LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
17 file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe" 16 file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe"
18 17
19DEPENDS += "gstreamer1.0-plugins-base libcap zlib" 18DEPENDS += "gstreamer1.0-plugins-base libcap zlib"
20RPROVIDES_${PN}-pulseaudio += "${PN}-pulse" 19RPROVIDES:${PN}-pulseaudio += "${PN}-pulse"
21RPROVIDES_${PN}-soup += "${PN}-souphttpsrc" 20RPROVIDES:${PN}-soup += "${PN}-souphttpsrc"
21RDEPENDS:${PN}-soup += "${MLPREFIX}${@bb.utils.contains('PACKAGECONFIG', 'soup2', 'libsoup-2.4', 'libsoup', d)}"
22
23PACKAGECONFIG_SOUP ?= "soup3"
22 24
23PACKAGECONFIG ??= " \ 25PACKAGECONFIG ??= " \
24 ${GSTREAMER_ORC} \ 26 ${GSTREAMER_ORC} \
27 ${PACKAGECONFIG_SOUP} \
25 ${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio x11', d)} \ 28 ${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio x11', d)} \
26 ${@bb.utils.contains('TUNE_FEATURES', 'm64', 'asm', '', d)} \ 29 ${@bb.utils.contains('TUNE_FEATURES', 'm64', 'asm', '', d)} \
27 bz2 cairo flac gdk-pixbuf gudev jpeg lame libpng mpg123 soup speex taglib v4l2 \ 30 bz2 cairo flac gdk-pixbuf gudev jpeg lame libpng mpg123 speex taglib v4l2 \
28" 31"
29 32
30X11DEPENDS = "virtual/libx11 libsm libxrender libxfixes libxdamage" 33X11DEPENDS = "virtual/libx11 libsm libxrender libxfixes libxdamage"
@@ -48,8 +51,9 @@ PACKAGECONFIG[libpng] = "-Dpng=enabled,-Dpng=disabled,libpng"
48PACKAGECONFIG[libv4l2] = "-Dv4l2-libv4l2=enabled,-Dv4l2-libv4l2=disabled,v4l-utils" 51PACKAGECONFIG[libv4l2] = "-Dv4l2-libv4l2=enabled,-Dv4l2-libv4l2=disabled,v4l-utils"
49PACKAGECONFIG[mpg123] = "-Dmpg123=enabled,-Dmpg123=disabled,mpg123" 52PACKAGECONFIG[mpg123] = "-Dmpg123=enabled,-Dmpg123=disabled,mpg123"
50PACKAGECONFIG[pulseaudio] = "-Dpulse=enabled,-Dpulse=disabled,pulseaudio" 53PACKAGECONFIG[pulseaudio] = "-Dpulse=enabled,-Dpulse=disabled,pulseaudio"
51PACKAGECONFIG[qt5] = "-Dqt5=enabled,-Dqt5=disabled,qtbase qtdeclarative qtbase-native ${QT5WAYLANDDEPENDS}" 54PACKAGECONFIG[qt5] = "-Dqt5=enabled,-Dqt5=disabled,qtbase qtdeclarative qtbase-native qttools-native ${QT5WAYLANDDEPENDS}"
52PACKAGECONFIG[soup] = "-Dsoup=enabled,-Dsoup=disabled,libsoup-2.4" 55PACKAGECONFIG[soup2] = "-Dsoup=enabled,,libsoup-2.4,,,soup3"
56PACKAGECONFIG[soup3] = "-Dsoup=enabled,,libsoup,,,soup2"
53PACKAGECONFIG[speex] = "-Dspeex=enabled,-Dspeex=disabled,speex" 57PACKAGECONFIG[speex] = "-Dspeex=enabled,-Dspeex=disabled,speex"
54PACKAGECONFIG[rpi] = "-Drpicamsrc=enabled,-Drpicamsrc=disabled,userland" 58PACKAGECONFIG[rpi] = "-Drpicamsrc=enabled,-Drpicamsrc=disabled,userland"
55PACKAGECONFIG[taglib] = "-Dtaglib=enabled,-Dtaglib=disabled,taglib" 59PACKAGECONFIG[taglib] = "-Dtaglib=enabled,-Dtaglib=disabled,taglib"
@@ -73,4 +77,4 @@ EXTRA_OEMESON += " \
73 -Dwaveform=disabled \ 77 -Dwaveform=disabled \
74" 78"
75 79
76FILES_${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs" 80FILES:${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-license.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-license.inc
new file mode 100644
index 0000000000..8b1c001111
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-license.inc
@@ -0,0 +1,19 @@
1# This .inc file contains functionality for automatically setting
2# the the license of all plugins according to the GSTREAMER_GPL.
3
4PACKAGESPLITFUNCS += "set_gstreamer_license"
5
6python set_gstreamer_license () {
7 import oe.utils
8 pn = d.getVar('PN') + '-'
9 gpl_plugins_names = [pn+plugin for plugin in d.getVar('GSTREAMER_GPL').split()]
10 for pkg in oe.utils.packages_filter_out_system(d):
11 if pkg in gpl_plugins_names:
12 d.setVar('LICENSE:' + pkg, 'GPL-2.0-or-later')
13 else:
14 d.setVar('LICENSE:' + pkg, 'LGPL-2.1-or-later')
15}
16
17EXTRA_OEMESON += " \
18 ${@bb.utils.contains_any('PACKAGECONFIG', "${GSTREAMER_GPL}", '-Dgpl=enabled', '-Dgpl=disabled', d)} \
19 "
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc
index 9a7a1b6afe..d77aeed8a2 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc
@@ -6,8 +6,11 @@
6# This is mainly used by the gstreamer1.0-plugins-* plugin set recipes, 6# This is mainly used by the gstreamer1.0-plugins-* plugin set recipes,
7# but can be used in any recipe that produces GStreamer plugins. 7# but can be used in any recipe that produces GStreamer plugins.
8 8
9PACKAGESPLITFUNCS_prepend = " split_gstreamer10_packages " 9# Dynamically generate packages for all enabled plugins
10PACKAGESPLITFUNCS_append = " set_gstreamer10_metapkg_rdepends " 10PACKAGES_DYNAMIC = "^${PN}-.* ^libgst.*"
11
12PACKAGESPLITFUNCS =+ "split_gstreamer10_packages"
13PACKAGESPLITFUNCS += "set_gstreamer10_metapkg_rdepends"
11 14
12python split_gstreamer10_packages () { 15python split_gstreamer10_packages () {
13 gst_libdir = d.expand('${libdir}/gstreamer-1.0') 16 gst_libdir = d.expand('${libdir}/gstreamer-1.0')
@@ -33,13 +36,13 @@ python set_gstreamer10_metapkg_rdepends () {
33 36
34 pn = d.getVar('PN') 37 pn = d.getVar('PN')
35 metapkg = pn + '-meta' 38 metapkg = pn + '-meta'
36 d.setVar('ALLOW_EMPTY_' + metapkg, "1") 39 d.setVar('ALLOW_EMPTY:' + metapkg, "1")
37 d.setVar('FILES_' + metapkg, "") 40 d.setVar('FILES:' + metapkg, "")
38 blacklist = [ pn, pn + '-meta' ] 41 exclude = [ pn, pn + '-meta' ]
39 metapkg_rdepends = [] 42 metapkg_rdepends = []
40 pkgdest = d.getVar('PKGDEST') 43 pkgdest = d.getVar('PKGDEST')
41 for pkg in oe.utils.packages_filter_out_system(d): 44 for pkg in oe.utils.packages_filter_out_system(d):
42 if pkg not in blacklist and pkg not in metapkg_rdepends: 45 if pkg not in exclude and pkg not in metapkg_rdepends:
43 # See if the package is empty by looking at the contents of its PKGDEST subdirectory. 46 # See if the package is empty by looking at the contents of its PKGDEST subdirectory.
44 # If this subdirectory is empty, then the package is. 47 # If this subdirectory is empty, then the package is.
45 # Empty packages do not get added to the meta package's RDEPENDS 48 # Empty packages do not get added to the meta package's RDEPENDS
@@ -51,20 +54,20 @@ python set_gstreamer10_metapkg_rdepends () {
51 is_empty = len(dir_contents) == 0 54 is_empty = len(dir_contents) == 0
52 if not is_empty: 55 if not is_empty:
53 metapkg_rdepends.append(pkg) 56 metapkg_rdepends.append(pkg)
54 d.setVar('RDEPENDS_' + metapkg, ' '.join(metapkg_rdepends)) 57 d.setVar('RDEPENDS:' + metapkg, ' '.join(metapkg_rdepends))
55 d.setVar('DESCRIPTION_' + metapkg, pn + ' meta package') 58 d.setVar('DESCRIPTION:' + metapkg, pn + ' meta package')
56} 59}
57 60
58# each plugin-dev depends on PN-dev, plugin-staticdev on PN-staticdev 61# each plugin-dev depends on PN-dev, plugin-staticdev on PN-staticdev
59# so we need them even when empty (like in gst-plugins-good case) 62# so we need them even when empty (like in gst-plugins-good case)
60ALLOW_EMPTY_${PN} = "1" 63ALLOW_EMPTY:${PN} = "1"
61ALLOW_EMPTY_${PN}-dev = "1" 64ALLOW_EMPTY:${PN}-dev = "1"
62ALLOW_EMPTY_${PN}-staticdev = "1" 65ALLOW_EMPTY:${PN}-staticdev = "1"
63 66
64PACKAGES += "${PN}-apps ${PN}-meta ${PN}-glib" 67PACKAGES += "${PN}-apps ${PN}-meta ${PN}-glib"
65 68
66FILES_${PN} = "" 69FILES:${PN} = ""
67FILES_${PN}-apps = "${bindir}" 70FILES:${PN}-apps = "${bindir}"
68FILES_${PN}-glib = "${datadir}/glib-2.0" 71FILES:${PN}-glib = "${datadir}/glib-2.0"
69 72
70RRECOMMENDS_${PN} += "${PN}-meta" 73RRECOMMENDS:${PN} += "${PN}-meta"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.3.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.22.11.bb
index 876a9268a2..99f41d4f3d 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.3.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.22.11.bb
@@ -1,19 +1,21 @@
1require gstreamer1.0-plugins-common.inc 1require gstreamer1.0-plugins-common.inc
2require gstreamer1.0-plugins-license.inc
2 3
3DESCRIPTION = "'Ugly GStreamer plugins" 4SUMMARY = "'Ugly GStreamer plugins"
4HOMEPAGE = "https://gstreamer.freedesktop.org/" 5HOMEPAGE = "https://gstreamer.freedesktop.org/"
5BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-ugly/-/issues" 6BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-ugly/-/issues"
6 7
7LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ 8LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
8 file://tests/check/elements/xingmux.c;beginline=1;endline=21;md5=4c771b8af188724855cb99cadd390068" 9 "
9 10
10LICENSE = "GPLv2+ & LGPLv2.1+ & LGPLv2+" 11LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
11LICENSE_FLAGS = "commercial" 12LICENSE_FLAGS = "commercial"
12 13
13SRC_URI = " \ 14SRC_URI = " \
14 https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \ 15 https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \
15 " 16 "
16SRC_URI[sha256sum] = "70f7429b25dd2f714eb18e80af61b1363b1f63019e16cd28e086e3a619eaa992" 17
18SRC_URI[sha256sum] = "7758b7decfd20c00cae5700822bcbbf03f98c723e33e17634db2e07ca1da60bf"
17 19
18S = "${WORKDIR}/gst-plugins-ugly-${PV}" 20S = "${WORKDIR}/gst-plugins-ugly-${PV}"
19 21
@@ -23,21 +25,22 @@ GST_PLUGIN_SET_HAS_EXAMPLES = "0"
23 25
24PACKAGECONFIG ??= " \ 26PACKAGECONFIG ??= " \
25 ${GSTREAMER_ORC} \ 27 ${GSTREAMER_ORC} \
26 a52dec mpeg2dec \
27" 28"
28 29
29PACKAGECONFIG[a52dec] = "-Da52dec=enabled,-Da52dec=disabled,liba52"
30PACKAGECONFIG[amrnb] = "-Damrnb=enabled,-Damrnb=disabled,opencore-amr" 30PACKAGECONFIG[amrnb] = "-Damrnb=enabled,-Damrnb=disabled,opencore-amr"
31PACKAGECONFIG[amrwb] = "-Damrwbdec=enabled,-Damrwbdec=disabled,opencore-amr" 31PACKAGECONFIG[amrwb] = "-Damrwbdec=enabled,-Damrwbdec=disabled,opencore-amr"
32PACKAGECONFIG[a52dec] = "-Da52dec=enabled,-Da52dec=disabled,liba52"
32PACKAGECONFIG[cdio] = "-Dcdio=enabled,-Dcdio=disabled,libcdio" 33PACKAGECONFIG[cdio] = "-Dcdio=enabled,-Dcdio=disabled,libcdio"
33PACKAGECONFIG[dvdread] = "-Ddvdread=enabled,-Ddvdread=disabled,libdvdread" 34PACKAGECONFIG[dvdread] = "-Ddvdread=enabled,-Ddvdread=disabled,libdvdread"
34PACKAGECONFIG[mpeg2dec] = "-Dmpeg2dec=enabled,-Dmpeg2dec=disabled,mpeg2dec" 35PACKAGECONFIG[mpeg2dec] = "-Dmpeg2dec=enabled,-Dmpeg2dec=disabled,mpeg2dec"
35PACKAGECONFIG[x264] = "-Dx264=enabled,-Dx264=disabled,x264" 36PACKAGECONFIG[x264] = "-Dx264=enabled,-Dx264=disabled,x264"
36 37
38GSTREAMER_GPL = "${@bb.utils.filter('PACKAGECONFIG', 'a52dec cdio dvdread mpeg2dec x264', d)}"
39
37EXTRA_OEMESON += " \ 40EXTRA_OEMESON += " \
38 -Ddoc=disabled \ 41 -Ddoc=disabled \
39 -Dsidplay=disabled \ 42 -Dsidplay=disabled \
40" 43"
41 44
42FILES_${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs" 45FILES:${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs"
43FILES_${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs" 46FILES:${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-ptest.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-ptest.inc
deleted file mode 100644
index b698067041..0000000000
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-ptest.inc
+++ /dev/null
@@ -1,23 +0,0 @@
1inherit ptest-gnome
2
3TEST_FILES_PATH = "${datadir}/installed-tests/gstreamer-1.0/test-files"
4RUN_PTEST_FILE = "${D}${PTEST_PATH}/run-ptest"
5
6EXTRA_OEMESON += "-Dtest-files-path=${TEST_FILES_PATH}"
7
8GST_TEST_SUITE_NAME ?= "gstreamer-1.0"
9
10# Using do_install_ptest_base instead of do_install_ptest, since
11# the default do_install_ptest_base is hardcoded to expect Makefiles.
12do_install_ptest_base() {
13 # Generate run-ptest file
14 echo "#!/usr/bin/env sh" > "${RUN_PTEST_FILE}"
15 echo "gnome-desktop-testing-runner ${GST_TEST_SUITE_NAME}" >> "${RUN_PTEST_FILE}"
16 chmod 0755 "${RUN_PTEST_FILE}"
17
18 # Install additional files required by tests
19 if [ -d "${S}/tests/files" ] ; then
20 install -d "${D}/${TEST_FILES_PATH}"
21 install -m 0644 "${S}/tests/files"/* "${D}/${TEST_FILES_PATH}"
22 fi
23}
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.3.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.22.11.bb
index 90b6fc38df..0fbb03f757 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.3.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.22.11.bb
@@ -4,23 +4,27 @@ provided by python-gi) "
4HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-python/" 4HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-python/"
5SECTION = "multimedia" 5SECTION = "multimedia"
6 6
7LICENSE = "LGPLv2.1" 7LICENSE = "LGPL-2.1-or-later"
8LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740" 8LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740"
9 9
10SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz" 10SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz"
11SRC_URI[sha256sum] = "4e630735276e08ff4d70337aa5d91fd008e5f1ed3dc0993674cd5820e264259a" 11SRC_URI[sha256sum] = "f7a5450d93fd81bf46060dca7f4a048d095b6717961fec211731a11a994c99a7"
12 12
13DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject" 13DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
14RDEPENDS_${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject" 14RDEPENDS:${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
15 15
16PNREAL = "gst-python" 16PNREAL = "gst-python"
17 17
18S = "${WORKDIR}/${PNREAL}-${PV}" 18S = "${WORKDIR}/${PNREAL}-${PV}"
19 19
20EXTRA_OEMESON += "-Dlibpython-dir=${libdir}" 20EXTRA_OEMESON += "\
21 -Dtests=disabled \
22 -Dplugin=enabled \
23 -Dlibpython-dir=${libdir} \
24"
21 25
22# gobject-introspection is mandatory and cannot be configured 26inherit meson pkgconfig setuptools3-base upstream-version-is-even features_check
23REQUIRED_DISTRO_FEATURES = "gobject-introspection-data" 27
24UNKNOWN_CONFIGURE_WHITELIST_append = " introspection" 28FILES:${PN} += "${libdir}/gstreamer-1.0"
25 29
26inherit meson pkgconfig distutils3-base upstream-version-is-even gobject-introspection features_check 30REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.3.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.22.11.bb
index d6aaa5df79..554ed9ec8f 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.3.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.22.11.bb
@@ -1,8 +1,8 @@
1SUMMARY = "A library on top of GStreamer for building an RTSP server" 1SUMMARY = "A library on top of GStreamer for building an RTSP server"
2HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-rtsp-server/" 2HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-rtsp-server/"
3SECTION = "multimedia" 3SECTION = "multimedia"
4LICENSE = "LGPLv2" 4LICENSE = "LGPL-2.1-or-later"
5LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d" 5LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770"
6 6
7DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base" 7DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base"
8 8
@@ -10,7 +10,7 @@ PNREAL = "gst-rtsp-server"
10 10
11SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz" 11SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz"
12 12
13SRC_URI[sha256sum] = "4f7757293b3d73dc49768b7392791668c4d0c21d41824624ffbd75c7f9ee0168" 13SRC_URI[sha256sum] = "ec49d474750a6ff6729c85b448abc607fb6840b21717ad7abc967e2adbf07a24"
14 14
15S = "${WORKDIR}/${PNREAL}-${PV}" 15S = "${WORKDIR}/${PNREAL}-${PV}"
16 16
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.3.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.22.11.bb
index 23040ad73c..87eb8484a1 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.3.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.22.11.bb
@@ -1,16 +1,17 @@
1SUMMARY = "VA-API support to GStreamer" 1SUMMARY = "VA-API support to GStreamer"
2HOMEPAGE = "https://gstreamer.freedesktop.org/"
2DESCRIPTION = "gstreamer-vaapi consists of a collection of VA-API \ 3DESCRIPTION = "gstreamer-vaapi consists of a collection of VA-API \
3based plugins for GStreamer and helper libraries: `vaapidecode', \ 4based plugins for GStreamer and helper libraries: `vaapidecode', \
4`vaapiconvert', and `vaapisink'." 5`vaapiconvert', and `vaapisink'."
5 6
6REALPN = "gstreamer-vaapi" 7REALPN = "gstreamer-vaapi"
7 8
8LICENSE = "LGPLv2.1+" 9LICENSE = "LGPL-2.1-or-later"
9LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c" 10LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
10 11
11SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz" 12SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz"
12 13
13SRC_URI[sha256sum] = "ae9877f15757a661d4dfe6a09755a2faa959ab60752f14ca26b7ff10765e1f12" 14SRC_URI[sha256sum] = "6eae1360658302b9b512fa46b4d06f5b818dfce5f2f43d7d710ca8142719d8ad"
14 15
15S = "${WORKDIR}/${REALPN}-${PV}" 16S = "${WORKDIR}/${REALPN}-${PV}"
16DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad" 17DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
@@ -39,14 +40,14 @@ PACKAGECONFIG ??= "drm encoders \
39 ${PACKAGECONFIG_GL} \ 40 ${PACKAGECONFIG_GL} \
40 ${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" 41 ${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}"
41 42
42PACKAGECONFIG[drm] = "-Dwith_drm=yes,-Dwith_drm=no,udev libdrm" 43PACKAGECONFIG[drm] = "-Ddrm=enabled,-Ddrm=disabled,udev libdrm"
43PACKAGECONFIG[egl] = "-Dwith_egl=yes,-Dwith_egl=no,virtual/egl" 44PACKAGECONFIG[egl] = "-Degl=enabled,-Degl=disabled,virtual/egl"
44PACKAGECONFIG[encoders] = "-Dwith_encoders=yes,-Dwith_encoders=no" 45PACKAGECONFIG[encoders] = "-Dencoders=enabled,-Dencoders=disabled"
45PACKAGECONFIG[glx] = "-Dwith_glx=yes,-Dwith_glx=no,virtual/libgl" 46PACKAGECONFIG[glx] = "-Dglx=enabled,-Dglx=disabled,virtual/libgl"
46PACKAGECONFIG[wayland] = "-Dwith_wayland=yes,-Dwith_wayland=no,wayland-native wayland wayland-protocols" 47PACKAGECONFIG[wayland] = "-Dwayland=enabled,-Dwayland=disabled,wayland-native wayland wayland-protocols"
47PACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxrandr libxrender" 48PACKAGECONFIG[x11] = "-Dx11=enabled,-Dx11=disabled,virtual/libx11 libxrandr libxrender"
48 49
49FILES_${PN} += "${libdir}/gstreamer-*/*.so" 50FILES:${PN} += "${libdir}/gstreamer-*/*.so"
50FILES_${PN}-dbg += "${libdir}/gstreamer-*/.debug" 51FILES:${PN}-dbg += "${libdir}/gstreamer-*/.debug"
51FILES_${PN}-dev += "${libdir}/gstreamer-*/*.a" 52FILES:${PN}-dev += "${libdir}/gstreamer-*/*.a"
52FILES_${PN}-tests = "${bindir}/*" 53FILES:${PN}-tests = "${bindir}/*"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch
deleted file mode 100644
index fe58e718a7..0000000000
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch
+++ /dev/null
@@ -1,66 +0,0 @@
1From fd8f49dba8c09d47425da80f5faab3bfa4a7c962 Mon Sep 17 00:00:00 2001
2From: Jose Quaresma <quaresma.jose@gmail.com>
3Date: Sat, 10 Oct 2020 19:09:03 +0000
4Subject: [PATCH 1/3] gstpluginloader: when env var is set do not fall through
5 to system plugin scanner
6
7If we set a custom GST_PLUGIN_SCANNER env var, then we probably want to use that and only that.
8
9Falling through to the one installed on the system is problamatic in cross-compilation
10environemnts, regardless of whether one pointed to by the env var succeeded or failed.
11
12taken from:
13http://cgit.openembedded.org/openembedded-core/commit/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch?id=0db7ba34ca41b107042306d13a6f0162885c123b
14
15Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/669]
16Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
17---
18 gst/gstpluginloader.c | 15 +++++++--------
19 1 file changed, 7 insertions(+), 8 deletions(-)
20
21diff --git a/gst/gstpluginloader.c b/gst/gstpluginloader.c
22index d1e404d98..c626bf263 100644
23--- a/gst/gstpluginloader.c
24+++ b/gst/gstpluginloader.c
25@@ -464,20 +464,19 @@ gst_plugin_loader_spawn (GstPluginLoader * loader)
26 if (loader->child_running)
27 return TRUE;
28
29- /* Find the gst-plugin-scanner: first try the env-var if it is set,
30- * otherwise use the installed version */
31+ /* Find the gst-plugin-scanner */
32 env = g_getenv ("GST_PLUGIN_SCANNER_1_0");
33 if (env == NULL)
34 env = g_getenv ("GST_PLUGIN_SCANNER");
35
36 if (env != NULL && *env != '\0') {
37+ /* use the env-var if it is set */
38 GST_LOG ("Trying GST_PLUGIN_SCANNER env var: %s", env);
39 helper_bin = g_strdup (env);
40 res = gst_plugin_loader_try_helper (loader, helper_bin);
41 g_free (helper_bin);
42- }
43-
44- if (!res) {
45+ } else {
46+ /* use the installed version */
47 GST_LOG ("Trying installed plugin scanner");
48
49 #ifdef G_OS_WIN32
50@@ -497,10 +496,10 @@ gst_plugin_loader_spawn (GstPluginLoader * loader)
51 #endif
52 res = gst_plugin_loader_try_helper (loader, helper_bin);
53 g_free (helper_bin);
54+ }
55
56- if (!res) {
57- GST_INFO ("No gst-plugin-scanner available, or not working");
58- }
59+ if (!res) {
60+ GST_INFO ("No gst-plugin-scanner available, or not working");
61 }
62
63 return loader->child_running;
64--
652.29.2
66
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch
new file mode 100644
index 0000000000..0d839bd6c8
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch
@@ -0,0 +1,34 @@
1From 5372cd5bf2a9dd247b9c5fc6e4fe248046dbb085 Mon Sep 17 00:00:00 2001
2From: Jose Quaresma <quaresma.jose@gmail.com>
3Date: Sun, 11 Apr 2021 19:48:13 +0100
4Subject: [PATCH] tests: respect the idententaion used in meson
5
6Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789]
7
8Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
9
10---
11 tests/check/meson.build | 10 +++++-----
12 1 file changed, 5 insertions(+), 5 deletions(-)
13
14diff --git a/tests/check/meson.build b/tests/check/meson.build
15index 9787b0a..16caac7 100644
16--- a/tests/check/meson.build
17+++ b/tests/check/meson.build
18@@ -145,11 +145,11 @@ foreach t : core_tests
19
20 if not skip_test
21 exe = executable(test_name, fname,
22- c_args : gst_c_args + test_defines,
23- cpp_args : gst_c_args + test_defines,
24- include_directories : [configinc],
25- link_with : link_with_libs,
26- dependencies : gst_deps + test_deps,
27+ c_args : gst_c_args + test_defines,
28+ cpp_args : gst_c_args + test_defines,
29+ include_directories : [configinc],
30+ link_with : link_with_libs,
31+ dependencies : gst_deps + test_deps,
32 )
33
34 env = environment()
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch
deleted file mode 100644
index e0e64e2c7a..0000000000
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch
+++ /dev/null
@@ -1,32 +0,0 @@
1From 1db36347d05d88835519368442e9aa89c64091ad Mon Sep 17 00:00:00 2001
2From: Seungha Yang <seungha@centricular.com>
3Date: Tue, 15 Sep 2020 00:54:58 +0900
4Subject: [PATCH] tests: seek: Don't use too strict timeout for validation
5
6Expected segment-done message might not be seen within expected
7time if system is not powerful enough.
8
9Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/625>
10
11Upstream-Status: Backport [https://cgit.freedesktop.org/gstreamer/gstreamer/commit?id=f44312ae5d831438fcf8041162079c65321c588c]
12Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
13---
14 tests/check/pipelines/seek.c | 2 +-
15 1 file changed, 1 insertion(+), 1 deletion(-)
16
17diff --git a/tests/check/pipelines/seek.c b/tests/check/pipelines/seek.c
18index 28bb8846d..5f7447bc5 100644
19--- a/tests/check/pipelines/seek.c
20+++ b/tests/check/pipelines/seek.c
21@@ -521,7 +521,7 @@ GST_START_TEST (test_loopback_2)
22
23 GST_INFO ("wait for segment done message");
24
25- msg = gst_bus_timed_pop_filtered (bus, (GstClockTime) 2 * GST_SECOND,
26+ msg = gst_bus_timed_pop_filtered (bus, GST_CLOCK_TIME_NONE,
27 GST_MESSAGE_SEGMENT_DONE | GST_MESSAGE_ERROR);
28 fail_unless (msg, "no message within the timed window");
29 fail_unless_equals_string (GST_MESSAGE_TYPE_NAME (msg), "segment-done");
30--
312.29.2
32
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch
deleted file mode 100644
index 96abef17b0..0000000000
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch
+++ /dev/null
@@ -1,112 +0,0 @@
1From 598d108e2c438d8f2ecd3bf948fa3ebbd3681490 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= <tim@centricular.com>
3Date: Fri, 14 Aug 2020 16:38:26 +0100
4Subject: [PATCH 2/3] Remove unused valgrind detection
5
6Having this just to log a debug message in case we're
7running inside valgrind doesn't seem very useful, and
8the code that used to use this no longer exists it seems.
9
10Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/595>
11
12Upstream-Status: Backport [a2cbf75523cdf8a4df1baa7007d86ef455972245]
13
14Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
15---
16 gst/gst_private.h | 2 --
17 gst/gstinfo.c | 39 ---------------------------------------
18 meson.build | 1 -
19 3 files changed, 42 deletions(-)
20
21diff --git a/gst/gst_private.h b/gst/gst_private.h
22index eefd044d9..8252ede51 100644
23--- a/gst/gst_private.h
24+++ b/gst/gst_private.h
25@@ -116,8 +116,6 @@ G_GNUC_INTERNAL gboolean _priv_plugin_deps_env_vars_changed (GstPlugin * plugin
26
27 G_GNUC_INTERNAL gboolean _priv_plugin_deps_files_changed (GstPlugin * plugin);
28
29-G_GNUC_INTERNAL gboolean _priv_gst_in_valgrind (void);
30-
31 /* init functions called from gst_init(). */
32 G_GNUC_INTERNAL void _priv_gst_quarks_initialize (void);
33 G_GNUC_INTERNAL void _priv_gst_mini_object_initialize (void);
34diff --git a/gst/gstinfo.c b/gst/gstinfo.c
35index 5d317877b..097f8b20d 100644
36--- a/gst/gstinfo.c
37+++ b/gst/gstinfo.c
38@@ -305,36 +305,6 @@ static gboolean pretty_tags = PRETTY_TAGS_DEFAULT;
39 static volatile gint G_GNUC_MAY_ALIAS __default_level = GST_LEVEL_DEFAULT;
40 static volatile gint G_GNUC_MAY_ALIAS __use_color = GST_DEBUG_COLOR_MODE_ON;
41
42-/* FIXME: export this? */
43-gboolean
44-_priv_gst_in_valgrind (void)
45-{
46- static enum
47- {
48- GST_VG_UNCHECKED,
49- GST_VG_NO_VALGRIND,
50- GST_VG_INSIDE
51- }
52- in_valgrind = GST_VG_UNCHECKED;
53-
54- if (in_valgrind == GST_VG_UNCHECKED) {
55-#ifdef HAVE_VALGRIND_VALGRIND_H
56- if (RUNNING_ON_VALGRIND) {
57- GST_CAT_INFO (GST_CAT_GST_INIT, "we're running inside valgrind");
58- in_valgrind = GST_VG_INSIDE;
59- } else {
60- GST_CAT_LOG (GST_CAT_GST_INIT, "not doing extra valgrind stuff");
61- in_valgrind = GST_VG_NO_VALGRIND;
62- }
63-#else
64- in_valgrind = GST_VG_NO_VALGRIND;
65-#endif
66- g_assert (in_valgrind == GST_VG_NO_VALGRIND ||
67- in_valgrind == GST_VG_INSIDE);
68- }
69- return (in_valgrind == GST_VG_INSIDE);
70-}
71-
72 static gchar *
73 _replace_pattern_in_gst_debug_file_name (gchar * name, const char *token,
74 guint val)
75@@ -463,9 +433,6 @@ _priv_gst_debug_init (void)
76 _priv_GST_CAT_PROTECTION =
77 _gst_debug_category_new ("GST_PROTECTION", 0, "protection");
78
79- /* print out the valgrind message if we're in valgrind */
80- _priv_gst_in_valgrind ();
81-
82 env = g_getenv ("GST_DEBUG_OPTIONS");
83 if (env != NULL) {
84 if (strstr (env, "full_tags") || strstr (env, "full-tags"))
85@@ -2503,12 +2470,6 @@ gst_debug_construct_win_color (guint colorinfo)
86 return 0;
87 }
88
89-gboolean
90-_priv_gst_in_valgrind (void)
91-{
92- return FALSE;
93-}
94-
95 void
96 _gst_debug_dump_mem (GstDebugCategory * cat, const gchar * file,
97 const gchar * func, gint line, GObject * obj, const gchar * msg,
98diff --git a/meson.build b/meson.build
99index ce1921aa4..7a84d0981 100644
100--- a/meson.build
101+++ b/meson.build
102@@ -200,7 +200,6 @@ check_headers = [
103 'sys/wait.h',
104 'ucontext.h',
105 'unistd.h',
106- 'valgrind/valgrind.h',
107 'sys/resource.h',
108 'sys/uio.h',
109 ]
110--
1112.29.2
112
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch
new file mode 100644
index 0000000000..64717e66c3
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch
@@ -0,0 +1,107 @@
1From 27e977d03b0f7c1d0bf19621ef0cec0585410e7b Mon Sep 17 00:00:00 2001
2From: Jose Quaresma <quaresma.jose@gmail.com>
3Date: Sun, 11 Apr 2021 19:48:13 +0100
4Subject: [PATCH] tests: add support for install the tests
5
6This will provide to run the tests using the gnome-desktop-testing [1]
7
8[1] https://wiki.gnome.org/Initiatives/GnomeGoals/InstalledTests
9
10Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789]
11
12Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
13
14---
15 meson.build | 4 ++++
16 meson_options.txt | 1 +
17 tests/check/meson.build | 22 +++++++++++++++++++++-
18 tests/check/template.test.in | 3 +++
19 4 files changed, 29 insertions(+), 1 deletion(-)
20 create mode 100644 tests/check/template.test.in
21
22diff --git a/meson.build b/meson.build
23index 60c7bec..f7650b1 100644
24--- a/meson.build
25+++ b/meson.build
26@@ -606,6 +606,10 @@ if bashcomp_dep.found()
27 endif
28 endif
29
30+installed_tests_enabled = get_option('installed_tests')
31+installed_tests_metadir = join_paths(datadir, 'installed-tests', meson.project_name())
32+installed_tests_execdir = join_paths(libexecdir, 'installed-tests', meson.project_name())
33+
34 plugins_install_dir = join_paths(get_option('libdir'), 'gstreamer-1.0')
35
36 pkgconfig = import('pkgconfig')
37diff --git a/meson_options.txt b/meson_options.txt
38index 7363bdb..a34ba37 100644
39--- a/meson_options.txt
40+++ b/meson_options.txt
41@@ -15,6 +15,7 @@ option('poisoning', type : 'boolean', value : false, description : 'Enable poiso
42 option('memory-alignment', type: 'combo',
43 choices : ['1', '2', '4', '8', '16', '32', '64', '128', '256', '512', '1024', '2048', '4096', '8192', 'malloc', 'pagesize'],
44 value: 'malloc')
45+option('installed_tests', type : 'boolean', value : false, description : 'Enable installed tests')
46
47 # Feature options
48 option('check', type : 'feature', value : 'auto', description : 'Build unit test libraries')
49diff --git a/tests/check/meson.build b/tests/check/meson.build
50index 16caac7..f2d400f 100644
51--- a/tests/check/meson.build
52+++ b/tests/check/meson.build
53@@ -124,10 +124,16 @@ test_defines = [
54 '-UG_DISABLE_ASSERT',
55 '-UG_DISABLE_CAST_CHECKS',
56 '-DGST_CHECK_TEST_ENVIRONMENT_BEACON="GST_STATE_IGNORE_ELEMENTS"',
57- '-DTESTFILE="' + meson.current_source_dir() + '/meson.build"',
58 '-DGST_DISABLE_DEPRECATED',
59 ]
60
61+testfile = meson.current_source_dir() + '/meson.build'
62+if installed_tests_enabled
63+ install_data(testfile, install_dir : installed_tests_metadir, rename : 'testfile')
64+ testfile = installed_tests_metadir + '/testfile'
65+endif
66+test_defines += '-DTESTFILE="@0@"'.format(testfile)
67+
68 # sanity checking
69 if get_option('check').disabled()
70 if get_option('tests').enabled()
71@@ -150,6 +156,8 @@ foreach t : core_tests
72 include_directories : [configinc],
73 link_with : link_with_libs,
74 dependencies : gst_deps + test_deps,
75+ install_dir: installed_tests_execdir,
76+ install: installed_tests_enabled,
77 )
78
79 env = environment()
80@@ -161,6 +169,18 @@ foreach t : core_tests
81 env.set('GST_PLUGIN_SCANNER_1_0', gst_scanner_dir + '/gst-plugin-scanner')
82 env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer')
83
84+ if installed_tests_enabled
85+ test_conf = configuration_data()
86+ test_conf.set('installed_tests_dir', join_paths(prefix, installed_tests_execdir))
87+ test_conf.set('program', test_name)
88+ configure_file(
89+ input: 'template.test.in',
90+ output: test_name + '.test',
91+ install_dir: installed_tests_metadir,
92+ configuration: test_conf
93+ )
94+ endif
95+
96 test(test_name, exe, env: env, timeout : 3 * 60)
97 endif
98 endforeach
99diff --git a/tests/check/template.test.in b/tests/check/template.test.in
100new file mode 100644
101index 0000000..f701627
102--- /dev/null
103+++ b/tests/check/template.test.in
104@@ -0,0 +1,3 @@
105+[Test]
106+Type=session
107+Exec=@installed_tests_dir@/@program@
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-meson-Add-option-for-installed-tests.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-meson-Add-option-for-installed-tests.patch
deleted file mode 100644
index bf5e57249c..0000000000
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-meson-Add-option-for-installed-tests.patch
+++ /dev/null
@@ -1,257 +0,0 @@
1From cf8077a7e3ab0ae236ebde79b7fc0b02eac658de Mon Sep 17 00:00:00 2001
2From: Carlos Rafael Giani <crg7475@mailbox.org>
3Date: Fri, 25 Oct 2019 00:06:26 +0200
4Subject: [PATCH 3/3] meson: Add option for installed tests
5
6This adds an option for producing installed versions of the unit tests.
7These versions don't need meson to run (only a small shell script). This
8makes it easier to run cross compiled tests on a target machine.
9
10Upstream-Status: Pending
11
12Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
13---
14 build-aux/gen-installed-test-desc.py | 18 ++++++
15 build-aux/gen-installed-test-shscript.py | 25 ++++++++
16 meson_options.txt | 2 +
17 tests/check/meson.build | 46 +++++++++++++-
18 tests/files/testfile | 80 ++++++++++++++++++++++++
19 5 files changed, 170 insertions(+), 1 deletion(-)
20 create mode 100644 build-aux/gen-installed-test-desc.py
21 create mode 100644 build-aux/gen-installed-test-shscript.py
22 create mode 100644 tests/files/testfile
23
24diff --git a/build-aux/gen-installed-test-desc.py b/build-aux/gen-installed-test-desc.py
25new file mode 100644
26index 000000000..69e8a0faf
27--- /dev/null
28+++ b/build-aux/gen-installed-test-desc.py
29@@ -0,0 +1,18 @@
30+import sys
31+import os
32+import argparse
33+
34+def write_template(filename, data):
35+ with open(filename, 'w') as f:
36+ f.write(data)
37+
38+def build_template(testdir, testname):
39+ return "[Test]\nType=session\nExec={}\n".format(os.path.join(testdir, testname))
40+
41+argparser = argparse.ArgumentParser(description='Generate installed-test data.')
42+argparser.add_argument('--test-execdir', metavar='dir', required=True, help='Installed test directory')
43+argparser.add_argument('--testname', metavar='name', required=True, help='Installed test name')
44+argparser.add_argument('--output', metavar='file', required=True, help='Output file')
45+args = argparser.parse_args()
46+
47+write_template(args.output, build_template(args.test_execdir, args.testname))
48diff --git a/build-aux/gen-installed-test-shscript.py b/build-aux/gen-installed-test-shscript.py
49new file mode 100644
50index 000000000..5da86fb37
51--- /dev/null
52+++ b/build-aux/gen-installed-test-shscript.py
53@@ -0,0 +1,25 @@
54+import sys
55+import os
56+import argparse
57+
58+def write_template(filename, data):
59+ with open(filename, 'w') as f:
60+ f.write(data)
61+
62+def build_template(testdir, testname):
63+ return ''.join([
64+ "#!/usr/bin/env sh\n",
65+ "export GST_STATE_IGNORE_ELEMENTS=''\n",
66+ "export CK_DEFAULT_TIMEOUT=20\n",
67+ "export GST_PLUGIN_LOADING_WHITELIST='gstreamer'\n",
68+ "{}\n".format(os.path.join(testdir, testname)),
69+ ])
70+
71+argparser = argparse.ArgumentParser(description='Generate installed-test data.')
72+argparser.add_argument('--test-execdir', metavar='dir', required=True, help='Installed test directory')
73+argparser.add_argument('--testname', metavar='name', required=True, help='Installed test name')
74+argparser.add_argument('--output', metavar='file', required=True, help='Output file')
75+args = argparser.parse_args()
76+
77+write_template(args.output, build_template(args.test_execdir, args.testname))
78+os.chmod(args.output, 0o755)
79diff --git a/meson_options.txt b/meson_options.txt
80index 72c3997e2..346c423d4 100644
81--- a/meson_options.txt
82+++ b/meson_options.txt
83@@ -15,6 +15,8 @@ option('poisoning', type : 'boolean', value : false, description : 'Enable poiso
84 option('memory-alignment', type: 'combo',
85 choices : ['1', '2', '4', '8', '16', '32', '64', '128', '256', '512', '1024', '2048', '4096', '8192', 'malloc', 'pagesize'],
86 value: 'malloc')
87+option('installed-tests', type : 'boolean', value : false, description : 'enable installed tests')
88+option('test-files-path', type : 'string', description : 'Path where to find test files')
89
90 # Feature options
91 option('check', type : 'feature', value : 'auto', description : 'Build unit test libraries')
92diff --git a/tests/check/meson.build b/tests/check/meson.build
93index a617cf159..e629131c5 100644
94--- a/tests/check/meson.build
95+++ b/tests/check/meson.build
96@@ -120,11 +120,17 @@ if add_languages('cpp', native: false, required: false)
97 ]
98 endif
99
100+test_files_path = get_option('test-files-path')
101+if test_files_path == ''
102+ test_files_path = meson.current_source_dir() + '/../files'
103+endif
104+message('Using path "@0@" as the path to read test files from'.format(test_files_path))
105+
106 test_defines = [
107 '-UG_DISABLE_ASSERT',
108 '-UG_DISABLE_CAST_CHECKS',
109 '-DGST_CHECK_TEST_ENVIRONMENT_BEACON="GST_STATE_IGNORE_ELEMENTS"',
110- '-DTESTFILE="' + meson.current_source_dir() + '/meson.build"',
111+ '-DTESTFILE="@0@"'.format(test_files_path + '/testfile'),
112 '-DGST_DISABLE_DEPRECATED',
113 ]
114
115@@ -138,6 +144,14 @@ endif
116 glib_deps = [gio_dep, gobject_dep, gmodule_dep, glib_dep]
117 gst_deps = [gst_dep, gst_base_dep, gst_check_dep, gst_net_dep, gst_controller_dep]
118
119+installed_tests_datadir = join_paths(prefix, get_option('datadir'), 'installed-tests', 'gstreamer-1.0')
120+installed_tests_execdir = join_paths(prefix, libexecdir, 'installed-tests', 'gstreamer-1.0')
121+installed_tests_enabled = get_option('installed-tests')
122+
123+python = import('python').find_installation()
124+gen_installed_test_desc = files('../../build-aux/gen-installed-test-desc.py')
125+gen_installed_test_shscript = files('../../build-aux/gen-installed-test-shscript.py')
126+
127 foreach t : core_tests
128 fname = t[0]
129 test_name = fname.split('.')[0].underscorify()
130@@ -151,8 +165,38 @@ foreach t : core_tests
131 include_directories : [configinc],
132 link_with : link_with_libs,
133 dependencies : test_deps + glib_deps + gst_deps,
134+ install_dir: installed_tests_execdir,
135+ install: installed_tests_enabled
136 )
137
138+ if installed_tests_enabled
139+ installed_test_shscript = test_name + '.sh'
140+ shscript = custom_target (test_name + '_shscript',
141+ output: installed_test_shscript,
142+ command: [
143+ python,
144+ gen_installed_test_shscript,
145+ '--test-execdir=@0@'.format(installed_tests_execdir),
146+ '--testname=@0@'.format(test_name),
147+ '--output=@0@'.format(join_paths('@OUTDIR@', installed_test_shscript)),
148+ ],
149+ install: true,
150+ install_dir: installed_tests_execdir)
151+
152+ installed_test_desc = test_name + '.test'
153+ data = custom_target(test_name + '_desc',
154+ output: installed_test_desc,
155+ command: [
156+ python,
157+ gen_installed_test_desc,
158+ '--test-execdir=@0@'.format(installed_tests_execdir),
159+ '--testname=@0@'.format(installed_test_shscript),
160+ '--output=@0@'.format(join_paths('@OUTDIR@', installed_test_desc)),
161+ ],
162+ install: true,
163+ install_dir: installed_tests_datadir)
164+ endif
165+
166 env = environment()
167 env.set('GST_PLUGIN_PATH_1_0', meson.build_root())
168 env.set('GST_PLUGIN_SYSTEM_PATH_1_0', '')
169diff --git a/tests/files/testfile b/tests/files/testfile
170new file mode 100644
171index 000000000..89954e0e2
172--- /dev/null
173+++ b/tests/files/testfile
174@@ -0,0 +1,80 @@
175+................................................................................
176+................................................................................
177+................................................................................
178+................................................................................
179+................................................................................
180+................................................................................
181+................................................................................
182+................................................................................
183+................................................................................
184+................................................................................
185+................................................................................
186+................................................................................
187+................................................................................
188+................................................................................
189+................................................................................
190+................................................................................
191+................................................................................
192+................................................................................
193+................................................................................
194+................................................................................
195+................................................................................
196+................................................................................
197+................................................................................
198+................................................................................
199+................................................................................
200+................................................................................
201+................................................................................
202+................................................................................
203+................................................................................
204+................................................................................
205+................................................................................
206+................................................................................
207+................................................................................
208+................................................................................
209+................................................................................
210+................................................................................
211+................................................................................
212+................................................................................
213+................................................................................
214+................................................................................
215+................................................................................
216+................................................................................
217+................................................................................
218+................................................................................
219+................................................................................
220+................................................................................
221+................................................................................
222+................................................................................
223+................................................................................
224+................................................................................
225+................................................................................
226+................................................................................
227+................................................................................
228+................................................................................
229+................................................................................
230+................................................................................
231+................................................................................
232+................................................................................
233+................................................................................
234+................................................................................
235+................................................................................
236+................................................................................
237+................................................................................
238+................................................................................
239+................................................................................
240+................................................................................
241+................................................................................
242+................................................................................
243+................................................................................
244+................................................................................
245+................................................................................
246+................................................................................
247+................................................................................
248+................................................................................
249+................................................................................
250+................................................................................
251+................................................................................
252+................................................................................
253+................................................................................
254+................................................................................
255--
2562.29.2
257
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch
new file mode 100644
index 0000000000..0fd830f150
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch
@@ -0,0 +1,48 @@
1From 7041bc5adf9501beb1428d8bbae6b351a6bf07f9 Mon Sep 17 00:00:00 2001
2From: Jose Quaresma <quaresma.jose@gmail.com>
3Date: Sat, 24 Apr 2021 10:34:47 +0100
4Subject: [PATCH] tests: use a dictionaries for environment
5
6meson environment() can't be passed to configure_file and it is needed for installed_tests,
7use a dictionary as this is simplest solution to install the environment.
8
9Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789]
10
11Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
12
13---
14 tests/check/meson.build | 21 +++++++++++++--------
15 1 file changed, 13 insertions(+), 8 deletions(-)
16
17diff --git a/tests/check/meson.build b/tests/check/meson.build
18index f2d400f..50dff7f 100644
19--- a/tests/check/meson.build
20+++ b/tests/check/meson.build
21@@ -160,14 +160,19 @@ foreach t : core_tests
22 install: installed_tests_enabled,
23 )
24
25- env = environment()
26- env.set('GST_PLUGIN_PATH_1_0', meson.project_build_root())
27- env.set('GST_PLUGIN_SYSTEM_PATH_1_0', '')
28- env.set('GST_STATE_IGNORE_ELEMENTS', '')
29- env.set('CK_DEFAULT_TIMEOUT', '20')
30- env.set('GST_REGISTRY', '@0@/@1@.registry'.format(meson.current_build_dir(), test_name))
31- env.set('GST_PLUGIN_SCANNER_1_0', gst_scanner_dir + '/gst-plugin-scanner')
32- env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer')
33+ # meson environment object can't be passed to configure_file and
34+ # installed tests uses configure_file to install the environment.
35+ # use a dictionary as this is the simplest solution
36+ # to install the environment.
37+ env = {
38+ 'GST_PLUGIN_PATH_1_0': meson.project_build_root(),
39+ 'GST_PLUGIN_SYSTEM_PATH_1_0': '',
40+ 'GST_STATE_IGNORE_ELEMENTS': '',
41+ 'CK_DEFAULT_TIMEOUT': '20',
42+ 'GST_REGISTRY': '@0@/@1@.registry'.format(meson.current_build_dir(), test_name),
43+ 'GST_PLUGIN_SCANNER_1_0': gst_scanner_dir + '/gst-plugin-scanner',
44+ 'GST_PLUGIN_LOADING_WHITELIST': 'gstreamer',
45+ }
46
47 if installed_tests_enabled
48 test_conf = configuration_data()
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch
new file mode 100644
index 0000000000..5689dc9fbb
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch
@@ -0,0 +1,72 @@
1From 1b1d1ce4227b6bea7c7def5dac4a663486e070c2 Mon Sep 17 00:00:00 2001
2From: Jose Quaresma <quaresma.jose@gmail.com>
3Date: Sun, 2 May 2021 01:58:01 +0100
4Subject: [PATCH] tests: add helper script to run the installed_tests
5
6- this is a bash script that will run the installed_tests
7with some of the environment variables used in the meson
8testing framework.
9
10Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789]
11
12Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
13
14---
15 tests/check/meson.build | 17 +++++++++++++++++
16 tests/check/template.sh.in | 9 +++++++++
17 tests/check/template.test.in | 2 +-
18 3 files changed, 27 insertions(+), 1 deletion(-)
19 create mode 100755 tests/check/template.sh.in
20
21diff --git a/tests/check/meson.build b/tests/check/meson.build
22index 50dff7f..2b9e979 100644
23--- a/tests/check/meson.build
24+++ b/tests/check/meson.build
25@@ -184,6 +184,23 @@ foreach t : core_tests
26 install_dir: installed_tests_metadir,
27 configuration: test_conf
28 )
29+
30+ # All the tests will be deployed on the target machine and
31+ # we use the home folder ~ for the registry which will then expand at runtime.
32+ # Using the /tmp/gstreamer-1.0/@0@.registry can be problematic as it mostly
33+ # is mounted using tmpfs and if the machine crash from some reason we can lost the registry
34+ # that is useful for debug propose of the tests itself.
35+ env += {'GST_REGISTRY': '~/.cache/gstreamer-1.0/@0@.registry'.format(test_name)}
36+
37+ # Set the full path for the test it self.
38+ env += {'TEST': '@0@/@1@'.format(join_paths(prefix, installed_tests_execdir), test_name)}
39+
40+ configure_file(
41+ input : 'template.sh.in',
42+ output: test_name + '.sh',
43+ install_dir: installed_tests_execdir,
44+ configuration : env,
45+ )
46 endif
47
48 test(test_name, exe, env: env, timeout : 3 * 60)
49diff --git a/tests/check/template.sh.in b/tests/check/template.sh.in
50new file mode 100755
51index 0000000..cf7d31b
52--- /dev/null
53+++ b/tests/check/template.sh.in
54@@ -0,0 +1,9 @@
55+#!/bin/sh
56+
57+set -ax
58+
59+CK_DEFAULT_TIMEOUT="@CK_DEFAULT_TIMEOUT@"
60+GST_PLUGIN_LOADING_WHITELIST="@GST_PLUGIN_LOADING_WHITELIST@"
61+GST_REGISTRY=@GST_REGISTRY@
62+GST_STATE_IGNORE_ELEMENTS="@GST_STATE_IGNORE_ELEMENTS@"
63+exec @TEST@
64diff --git a/tests/check/template.test.in b/tests/check/template.test.in
65index f701627..b74ef6a 100644
66--- a/tests/check/template.test.in
67+++ b/tests/check/template.test.in
68@@ -1,3 +1,3 @@
69 [Test]
70 Type=session
71-Exec=@installed_tests_dir@/@program@
72+Exec=@installed_tests_dir@/@program@.sh
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest b/meta/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest
new file mode 100755
index 0000000000..7d0312005f
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest
@@ -0,0 +1,16 @@
1#! /bin/sh
2
3# Multiply all timeouts by ten so they're more likely to work
4# on a loaded system.
5export CK_TIMEOUT_MULTIPLIER=5
6
7# Skip some tests that we know are problematic
8export GST_CHECKS_IGNORE=""
9# gstnetclientclock.c:test_functioning is very sensitive to load
10GST_CHECKS_IGNORE="$GST_CHECKS_IGNORE,test_functioning"
11
12# aggregator.c:test_infinite_seek_50_src_live is known to be flaky
13# https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/410
14GST_CHECKS_IGNORE="$GST_CHECKS_IGNORE,test_infinite_seek_50_src_live"
15
16gnome-desktop-testing-runner gstreamer
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.3.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.22.11.bb
index 9cb07726ed..8965497d01 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.3.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.22.11.bb
@@ -4,24 +4,25 @@ It supports a wide range of formats including mp3, ogg, avi, mpeg and quicktime.
4HOMEPAGE = "http://gstreamer.freedesktop.org/" 4HOMEPAGE = "http://gstreamer.freedesktop.org/"
5BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer" 5BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer"
6SECTION = "multimedia" 6SECTION = "multimedia"
7LICENSE = "LGPLv2+" 7LICENSE = "LGPL-2.1-or-later"
8 8
9DEPENDS = "glib-2.0 glib-2.0-native libxml2 bison-native flex-native" 9DEPENDS = "glib-2.0 glib-2.0-native libxml2 bison-native flex-native"
10 10
11inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection 11inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection ptest-gnome
12 12
13LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \ 13LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770 \
14 file://gst/gst.h;beginline=1;endline=21;md5=e059138481205ee2c6fc1c079c016d0d" 14 file://gst/gst.h;beginline=1;endline=21;md5=e059138481205ee2c6fc1c079c016d0d"
15 15
16S = "${WORKDIR}/gstreamer-${PV}" 16S = "${WORKDIR}/gstreamer-${PV}"
17 17
18SRC_URI = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \ 18SRC_URI = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \
19 file://0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch \ 19 file://run-ptest \
20 file://0002-Remove-unused-valgrind-detection.patch \ 20 file://0001-tests-respect-the-idententaion-used-in-meson.patch \
21 file://0003-meson-Add-option-for-installed-tests.patch \ 21 file://0002-tests-add-support-for-install-the-tests.patch \
22 file://0001-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch \ 22 file://0003-tests-use-a-dictionaries-for-environment.patch \
23 file://0004-tests-add-helper-script-to-run-the-installed_tests.patch \
23 " 24 "
24SRC_URI[sha256sum] = "0c2e09e18f2df69a99b5cb3bd53c597b3cc2e35cf6c98043bb86a66f3d312100" 25SRC_URI[sha256sum] = "3d16259e9dab8b002c57ce208a09b350d8282f5b0197306c0cdba9a0d0799744"
25 26
26PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \ 27PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
27 check \ 28 check \
@@ -30,8 +31,9 @@ PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
30 31
31PACKAGECONFIG[debug] = "-Dgst_debug=true,-Dgst_debug=false" 32PACKAGECONFIG[debug] = "-Dgst_debug=true,-Dgst_debug=false"
32PACKAGECONFIG[tracer-hooks] = "-Dtracer_hooks=true,-Dtracer_hooks=false" 33PACKAGECONFIG[tracer-hooks] = "-Dtracer_hooks=true,-Dtracer_hooks=false"
34PACKAGECONFIG[coretracers] = "-Dcoretracers=enabled,-Dcoretracers=disabled"
33PACKAGECONFIG[check] = "-Dcheck=enabled,-Dcheck=disabled" 35PACKAGECONFIG[check] = "-Dcheck=enabled,-Dcheck=disabled"
34PACKAGECONFIG[tests] = "-Dtests=enabled -Dinstalled-tests=true,-Dtests=disabled -Dinstalled-tests=false" 36PACKAGECONFIG[tests] = "-Dtests=enabled -Dinstalled_tests=true,-Dtests=disabled -Dinstalled_tests=false"
35PACKAGECONFIG[unwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind" 37PACKAGECONFIG[unwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind"
36PACKAGECONFIG[dw] = "-Dlibdw=enabled,-Dlibdw=disabled,elfutils" 38PACKAGECONFIG[dw] = "-Dlibdw=enabled,-Dlibdw=disabled,elfutils"
37PACKAGECONFIG[bash-completion] = "-Dbash-completion=enabled,-Dbash-completion=disabled,bash-completion" 39PACKAGECONFIG[bash-completion] = "-Dbash-completion=enabled,-Dbash-completion=disabled,bash-completion"
@@ -60,11 +62,13 @@ GIR_MESON_DISABLE_FLAG = "disabled"
60PACKAGES += "${PN}-bash-completion" 62PACKAGES += "${PN}-bash-completion"
61 63
62# Add the core element plugins to the main package 64# Add the core element plugins to the main package
63FILES_${PN} += "${libdir}/gstreamer-1.0/*.so" 65FILES:${PN} += "${libdir}/gstreamer-1.0/*.so"
64FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.a ${libdir}/gstreamer-1.0/include" 66FILES:${PN}-dev += "${libdir}/gstreamer-1.0/*.a ${libdir}/gstreamer-1.0/include"
65FILES_${PN}-bash-completion += "${datadir}/bash-completion/completions/ ${datadir}/bash-completion/helpers/gst*" 67FILES:${PN}-bash-completion += "${datadir}/bash-completion/completions/ ${datadir}/bash-completion/helpers/gst*"
66FILES_${PN}-dbg += "${datadir}/gdb ${datadir}/gstreamer-1.0/gdb" 68FILES:${PN}-dbg += "${datadir}/gdb ${datadir}/gstreamer-1.0/gdb"
69
70RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-gconv-iso8859-5"
67 71
68CVE_PRODUCT = "gstreamer" 72CVE_PRODUCT = "gstreamer"
69 73
70require gstreamer1.0-ptest.inc 74PTEST_BUILD_HOST_FILES = ""