diff options
Diffstat (limited to 'meta/recipes-multimedia/gstreamer')
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 @@ | |||
1 | From 73b1002eda17451db1f58431b42c25203f1d3097 Mon Sep 17 00:00:00 2001 | 1 | From 0c73b8131efba63c5cd37ea8c7551434c3b57304 Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Sun, 9 Sep 2018 17:38:10 -0700 | 3 | Date: Sun, 9 Sep 2018 17:38:10 -0700 |
4 | Subject: [PATCH] connect has a different signature on musl | 4 | Subject: [PATCH] connect has a different signature on musl |
@@ -11,6 +11,7 @@ typcasted to struct sockaddr_in* type inside the function before use | |||
11 | Upstream-Status: Pending | 11 | Upstream-Status: Pending |
12 | 12 | ||
13 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | 13 | Signed-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" | |||
3 | HOMEPAGE = "https://gstreamer.freedesktop.org/documentation/gst-devtools/index.html" | 3 | HOMEPAGE = "https://gstreamer.freedesktop.org/documentation/gst-devtools/index.html" |
4 | SECTION = "multimedia" | 4 | SECTION = "multimedia" |
5 | 5 | ||
6 | LICENSE = "LGPLv2.1" | 6 | LICENSE = "LGPL-2.1-or-later" |
7 | LIC_FILES_CHKSUM = "file://validate/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343" | 7 | LIC_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 | ||
15 | SRC_URI[sha256sum] = "3025fee3607caf5069154c099533785675916e044ee92c936bbeacdda3750f26" | 15 | SRC_URI[sha256sum] = "07766425ecb5bf857ab5ad3962321c55cd89f9386b720843f9df71c0a455eb9b" |
16 | 16 | ||
17 | DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base" | 17 | DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base" |
18 | RRECOMMENDS_${PN} = "git" | 18 | RRECOMMENDS:${PN} = "git" |
19 | 19 | ||
20 | FILES_${PN} += "${datadir}/gstreamer-1.0/* ${libdir}/gst-validate-launcher/* ${libdir}/gstreamer-1.0/*" | 20 | FILES:${PN} += "${datadir}/gstreamer-1.0/* ${libdir}/gst-validate-launcher/* ${libdir}/gstreamer-1.0/*" |
21 | 21 | ||
22 | inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection | 22 | inherit 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 | ||
34 | PACKAGECONFIG[cairo] = "-Dcairo=enabled,-Dcairo=disabled,cairo" | ||
35 | |||
33 | EXTRA_OEMESON += " \ | 36 | EXTRA_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 | ||
41 | do_install_append () { | 44 | do_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] |
2 | Name=Media Player | 2 | Name=Media Player |
3 | Comment=Basic media player | 3 | Comment=Basic media player |
4 | Icon=multimedia-player | 4 | Icon=video-player |
5 | TryExec=gtk-play | 5 | TryExec=gtk-play |
6 | Exec=gtk-play | 6 | Exec=gtk-play |
7 | StartupNotify=true | 7 | StartupNotify=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)" | |||
2 | DESCRIPTION = "GStreamer example applications" | 2 | DESCRIPTION = "GStreamer example applications" |
3 | HOMEPAGE = "https://gitlab.freedesktop.org/gstreamer/gst-examples" | 3 | HOMEPAGE = "https://gitlab.freedesktop.org/gstreamer/gst-examples" |
4 | BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-examples/-/issues" | 4 | BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-examples/-/issues" |
5 | LICENSE = "LGPL-2.0+" | 5 | LICENSE = "LGPL-2.0-or-later" |
6 | LIC_FILES_CHKSUM = "file://playback/player/gtk/gtk-play.c;beginline=1;endline=20;md5=f8c72dae3d36823ec716a9ebcae593b9" | 6 | LIC_FILES_CHKSUM = "file://playback/player/gtk/gtk-play.c;beginline=1;endline=20;md5=f8c72dae3d36823ec716a9ebcae593b9" |
7 | 7 | ||
8 | DEPENDS = "glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad gtk+3 libsoup-2.4 json-glib glib-2.0-native" | 8 | DEPENDS = "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 | ||
15 | SRCREV = "06599904baa5d0e47b5cb9501372156567760f8e" | 15 | SRCREV = "70e4fcf4fc8ae19641aa990de5f37d758cdfcea4" |
16 | 16 | ||
17 | S = "${WORKDIR}/git" | 17 | S = "${WORKDIR}/git" |
18 | 18 | ||
@@ -22,14 +22,14 @@ UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)" | |||
22 | 22 | ||
23 | ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" | 23 | ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" |
24 | 24 | ||
25 | do_install_append() { | 25 | do_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 | ||
29 | RDEPENDS_${PN} = "gstreamer1.0-plugins-base-playback" | 29 | RDEPENDS:${PN} = "gstreamer1.0-plugins-base-playback" |
30 | RRECOMMENDS_${PN} = "gstreamer1.0-plugins-base-meta \ | 30 | RRECOMMENDS:${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)}" |
35 | RPROVIDES_${PN} += "gst-player gst-player-bin" | 35 | RPROVIDES:${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 |
8 | LICENSE_FLAGS = "commercial" | 8 | LICENSE_FLAGS = "commercial" |
9 | LICENSE = "LGPLv2+" | 9 | LICENSE = "LGPL-2.1-or-later" |
10 | LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \ | 10 | LIC_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 | ||
14 | SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz" | 14 | SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz" |
15 | SRC_URI[sha256sum] = "ad20546bcd78ac1e7cf194666d73c4f33efeb62647d2b6af22993b540699e91c" | 15 | SRC_URI[sha256sum] = "6b13dcc9332ef27a7c1e7005c0196883874f91622f8aa6e52f218b05b15d2bf5" |
16 | 16 | ||
17 | S = "${WORKDIR}/gst-libav-${PV}" | 17 | S = "${WORKDIR}/gst-libav-${PV}" |
18 | 18 | ||
@@ -20,5 +20,9 @@ DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base ffmpeg" | |||
20 | 20 | ||
21 | inherit meson pkgconfig upstream-version-is-even | 21 | inherit meson pkgconfig upstream-version-is-even |
22 | 22 | ||
23 | FILES_${PN} += "${libdir}/gstreamer-1.0/*.so" | 23 | EXTRA_OEMESON += " \ |
24 | FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" | 24 | -Dtests=disabled \ |
25 | " | ||
26 | |||
27 | FILES:${PN} += "${libdir}/gstreamer-1.0/*.so" | ||
28 | FILES:${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 | ||
21 | ALLOW_EMPTY_gstreamer1.0-meta-base = "1" | 21 | ALLOW_EMPTY:gstreamer1.0-meta-base = "1" |
22 | ALLOW_EMPTY_gstreamer1.0-meta-x11-base = "1" | 22 | ALLOW_EMPTY:gstreamer1.0-meta-x11-base = "1" |
23 | ALLOW_EMPTY_gstreamer1.0-meta-audio = "1" | 23 | ALLOW_EMPTY:gstreamer1.0-meta-audio = "1" |
24 | ALLOW_EMPTY_gstreamer1.0-meta-debug = "1" | 24 | ALLOW_EMPTY:gstreamer1.0-meta-debug = "1" |
25 | ALLOW_EMPTY_gstreamer1.0-meta-video = "1" | 25 | ALLOW_EMPTY:gstreamer1.0-meta-video = "1" |
26 | 26 | ||
27 | RDEPENDS_gstreamer1.0-meta-base = "\ | 27 | RDEPENDS: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 | ||
42 | RRECOMMENDS_gstreamer1.0-meta-x11-base = "\ | 41 | RRECOMMENDS: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 | ||
46 | RDEPENDS_gstreamer1.0-meta-audio = "\ | 45 | RDEPENDS: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 | ||
54 | RDEPENDS_gstreamer1.0-meta-debug = "\ | 53 | RDEPENDS: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 | ||
60 | RDEPENDS_gstreamer1.0-meta-video = "\ | 59 | RDEPENDS: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 | ||
67 | RRECOMMENDS_gstreamer1.0-meta-video = "\ | 66 | RRECOMMENDS: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 | |||
3 | HOMEPAGE = "http://gstreamer.freedesktop.org/" | 3 | HOMEPAGE = "http://gstreamer.freedesktop.org/" |
4 | SECTION = "multimedia" | 4 | SECTION = "multimedia" |
5 | 5 | ||
6 | LICENSE = "LGPLv2.1" | 6 | LICENSE = "LGPL-2.1-or-later" |
7 | LICENSE_FLAGS = "commercial" | 7 | LICENSE_FLAGS = "commercial" |
8 | LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ | 8 | LIC_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 | ||
11 | SRC_URI = "https://gstreamer.freedesktop.org/src/gst-omx/gst-omx-${PV}.tar.xz" | 11 | SRC_URI = "https://gstreamer.freedesktop.org/src/gst-omx/gst-omx-${PV}.tar.xz" |
12 | 12 | ||
13 | SRC_URI[sha256sum] = "ed0f26504e9a60e15055134410f156e40952336410f2a59bdbbda45e61e8b93f" | 13 | SRC_URI[sha256sum] = "18dfdf5f6b773d67e62a315c6cf6247da320b83603a5819493f53c69ed2eeef6" |
14 | 14 | ||
15 | S = "${WORKDIR}/gst-omx-${PV}" | 15 | S = "${WORKDIR}/gst-omx-${PV}" |
16 | 16 | ||
@@ -40,8 +40,8 @@ set_omx_core_name() { | |||
40 | } | 40 | } |
41 | do_install[postfuncs] += " set_omx_core_name " | 41 | do_install[postfuncs] += " set_omx_core_name " |
42 | 42 | ||
43 | FILES_${PN} += "${libdir}/gstreamer-1.0/*.so" | 43 | FILES:${PN} += "${libdir}/gstreamer-1.0/*.so" |
44 | FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" | 44 | FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" |
45 | 45 | ||
46 | VIRTUAL-RUNTIME_libomxil ?= "libomxil" | 46 | VIRTUAL-RUNTIME_libomxil ?= "libomxil" |
47 | RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_libomxil}" | 47 | RDEPENDS:${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 @@ | |||
1 | From f08ab3ac2ce43ac91d3bf65b26f26436690f499b Mon Sep 17 00:00:00 2001 | 1 | From 8be0c6ac60c96e87d8aa443be9c431844dc3d92a Mon Sep 17 00:00:00 2001 |
2 | From: Andre McCurdy <armccurdy@gmail.com> | 2 | From: Andre McCurdy <armccurdy@gmail.com> |
3 | Date: Tue, 26 Jan 2016 15:16:01 -0800 | 3 | Date: Tue, 26 Jan 2016 15:16:01 -0800 |
4 | Subject: [PATCH 1/4] fix maybe-uninitialized warnings when compiling with -Os | 4 | Subject: [PATCH] fix maybe-uninitialized warnings when compiling with -Os |
5 | 5 | ||
6 | Upstream-Status: Pending | 6 | Upstream-Status: Pending |
7 | 7 | ||
8 | Signed-off-by: Andre McCurdy <armccurdy@gmail.com> | 8 | Signed-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 | -- | ||
27 | 2.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 @@ | |||
1 | From 3b05e91720c10fcf6e0e408595b7217f6fa145c2 Mon Sep 17 00:00:00 2001 | 1 | From 426ee79adeecc24605426030a486d7c5a755048c Mon Sep 17 00:00:00 2001 |
2 | From: Andre McCurdy <armccurdy@gmail.com> | 2 | From: Andre McCurdy <armccurdy@gmail.com> |
3 | Date: Wed, 3 Feb 2016 18:05:41 -0800 | 3 | Date: Wed, 3 Feb 2016 18:05:41 -0800 |
4 | Subject: [PATCH 2/4] avoid including <sys/poll.h> directly | 4 | Subject: [PATCH] avoid including <sys/poll.h> directly |
5 | 5 | ||
6 | musl libc generates warnings if <sys/poll.h> is included directly. | 6 | musl libc generates warnings if <sys/poll.h> is included directly. |
7 | 7 | ||
8 | Upstream-Status: Pending | 8 | Upstream-Status: Pending |
9 | 9 | ||
10 | Signed-off-by: Andre McCurdy <armccurdy@gmail.com> | 10 | Signed-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 | ||
15 | diff --git a/sys/dvb/gstdvbsrc.c b/sys/dvb/gstdvbsrc.c | 16 | diff --git a/sys/dvb/gstdvbsrc.c b/sys/dvb/gstdvbsrc.c |
16 | index ca6b92a..b2772db 100644 | 17 | index 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 | -- | ||
29 | 2.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 @@ | |||
1 | From 5ed27de9f662fe063b8b3d5d4335aa64cd4718c9 Mon Sep 17 00:00:00 2001 | ||
2 | From: Andre McCurdy <armccurdy@gmail.com> | ||
3 | Date: Tue, 9 Feb 2016 14:00:00 -0800 | ||
4 | Subject: [PATCH 3/4] ensure valid sentinals for gst_structure_get() etc | ||
5 | |||
6 | For GStreamer functions declared with G_GNUC_NULL_TERMINATED, | ||
7 | ie __attribute__((__sentinel__)), gcc will generate a warning if the | ||
8 | last parameter passed to the function is not NULL (where a valid NULL | ||
9 | in this context is defined as zero with any pointer type). | ||
10 | |||
11 | The C callers to such functions within gst-plugins-bad use the C NULL | ||
12 | definition (ie ((void*)0)), which is a valid sentinel. | ||
13 | |||
14 | However the C++ NULL definition (ie 0L), is not a valid sentinel | ||
15 | without an explicit cast to a pointer type. | ||
16 | |||
17 | Upstream-Status: Pending | ||
18 | |||
19 | Signed-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 | |||
26 | diff --git a/sys/decklink/gstdecklink.cpp b/sys/decklink/gstdecklink.cpp | ||
27 | index 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 */ | ||
60 | diff --git a/sys/decklink/gstdecklinkaudiosrc.cpp b/sys/decklink/gstdecklinkaudiosrc.cpp | ||
61 | index 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) { | ||
73 | diff --git a/sys/decklink/gstdecklinkvideosink.cpp b/sys/decklink/gstdecklinkvideosink.cpp | ||
74 | index 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 | -- | ||
87 | 2.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 @@ | |||
1 | From f19ff66640f2f472c4e9d9055253032d34e125c6 Mon Sep 17 00:00:00 2001 | 1 | From e6eb7536fcfc2c75f7831f67b1f16f3f36ef2545 Mon Sep 17 00:00:00 2001 |
2 | From: Andrey Zhizhikin <andrey.z@gmail.com> | 2 | From: Andrey Zhizhikin <andrey.z@gmail.com> |
3 | Date: Mon, 27 Jan 2020 10:22:35 +0000 | 3 | Date: Mon, 27 Jan 2020 10:22:35 +0000 |
4 | Subject: [PATCH 4/4] opencv: resolve missing opencv data dir in yocto build | 4 | Subject: [PATCH] opencv: resolve missing opencv data dir in yocto build |
5 | 5 | ||
6 | When Yocto build is performed, opencv searches for data dir using simple | 6 | When 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. | |||
11 | Upstream-Status: Inappropriate [OE-specific] | 11 | Upstream-Status: Inappropriate [OE-specific] |
12 | 12 | ||
13 | Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com> | 13 | Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com> |
14 | Signed-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 | ||
18 | diff --git a/ext/opencv/meson.build b/ext/opencv/meson.build | 20 | diff --git a/ext/opencv/meson.build b/ext/opencv/meson.build |
19 | index 0b0b3fc..0ed3344 100644 | 21 | index 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 | -- | ||
48 | 2.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 @@ | |||
1 | From 1f00d5026118ebd48e4ccf83d32d67155c4e7f60 Mon Sep 17 00:00:00 2001 | ||
2 | From: Naveen Saini <naveen.kumar.saini@intel.com> | ||
3 | Date: Wed, 30 Dec 2020 16:37:47 +0800 | ||
4 | Subject: [PATCH] msdk: fix includedir path | ||
5 | |||
6 | In cross compilation, need to prepend PKG_CONFIG_SYSROOT_DIR to the dir path. | ||
7 | |||
8 | Upstream-Status: Inappropriate [OE-specific] | ||
9 | |||
10 | Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com> | ||
11 | --- | ||
12 | sys/msdk/meson.build | 2 ++ | ||
13 | 1 file changed, 2 insertions(+) | ||
14 | |||
15 | diff --git a/sys/msdk/meson.build b/sys/msdk/meson.build | ||
16 | index 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 | -- | ||
30 | 2.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 @@ | |||
1 | require gstreamer1.0-plugins-common.inc | 1 | require gstreamer1.0-plugins-common.inc |
2 | require gstreamer1.0-plugins-license.inc | ||
2 | 3 | ||
3 | DESCRIPTION = "'Bad' GStreamer plugins and helper libraries " | 4 | SUMMARY = "'Bad' GStreamer plugins and helper libraries " |
4 | HOMEPAGE = "https://gstreamer.freedesktop.org/" | 5 | HOMEPAGE = "https://gstreamer.freedesktop.org/" |
5 | BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues" | 6 | BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues" |
6 | 7 | ||
7 | SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \ | 8 | SRC_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 | " |
14 | SRC_URI[sha256sum] = "b7e34b6b86272588fbd8b314dadfa6ceff895198cfb59e2950378e9e31ff22e0" | 13 | SRC_URI[sha256sum] = "808d3b33fc4c71aeb2561c364a87c2e8a3e2343319a83244c8391be4b09499c8" |
15 | 14 | ||
16 | S = "${WORKDIR}/gst-plugins-bad-${PV}" | 15 | S = "${WORKDIR}/gst-plugins-bad-${PV}" |
17 | 16 | ||
18 | LICENSE = "GPLv2+ & LGPLv2+ & LGPLv2.1+" | 17 | LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later" |
19 | LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" | 18 | LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" |
20 | 19 | ||
21 | DEPENDS += "gstreamer1.0-plugins-base" | 20 | DEPENDS += "gstreamer1.0-plugins-base" |
@@ -25,15 +24,17 @@ inherit gobject-introspection | |||
25 | PACKAGECONFIG ??= " \ | 24 | PACKAGECONFIG ??= " \ |
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 | ||
35 | PACKAGECONFIG[aom] = "-Daom=enabled,-Daom=disabled,aom" | 35 | PACKAGECONFIG[aom] = "-Daom=enabled,-Daom=disabled,aom" |
36 | PACKAGECONFIG[assrender] = "-Dassrender=enabled,-Dassrender=disabled,libass" | 36 | PACKAGECONFIG[assrender] = "-Dassrender=enabled,-Dassrender=disabled,libass" |
37 | PACKAGECONFIG[avtp] = "-Davtp=enabled,-Davtp=disabled,libavtp" | ||
37 | PACKAGECONFIG[bluez] = "-Dbluez=enabled,-Dbluez=disabled,bluez5" | 38 | PACKAGECONFIG[bluez] = "-Dbluez=enabled,-Dbluez=disabled,bluez5" |
38 | PACKAGECONFIG[bz2] = "-Dbz2=enabled,-Dbz2=disabled,bzip2" | 39 | PACKAGECONFIG[bz2] = "-Dbz2=enabled,-Dbz2=disabled,bzip2" |
39 | PACKAGECONFIG[closedcaption] = "-Dclosedcaption=enabled,-Dclosedcaption=disabled,pango cairo" | 40 | PACKAGECONFIG[closedcaption] = "-Dclosedcaption=enabled,-Dclosedcaption=disabled,pango cairo" |
@@ -45,18 +46,21 @@ PACKAGECONFIG[dtls] = "-Ddtls=enabled,-Ddtls=disabled,openssl" | |||
45 | PACKAGECONFIG[faac] = "-Dfaac=enabled,-Dfaac=disabled,faac" | 46 | PACKAGECONFIG[faac] = "-Dfaac=enabled,-Dfaac=disabled,faac" |
46 | PACKAGECONFIG[faad] = "-Dfaad=enabled,-Dfaad=disabled,faad2" | 47 | PACKAGECONFIG[faad] = "-Dfaad=enabled,-Dfaad=disabled,faad2" |
47 | PACKAGECONFIG[fluidsynth] = "-Dfluidsynth=enabled,-Dfluidsynth=disabled,fluidsynth" | 48 | PACKAGECONFIG[fluidsynth] = "-Dfluidsynth=enabled,-Dfluidsynth=disabled,fluidsynth" |
48 | PACKAGECONFIG[hls] = "-Dhls=enabled -Dhls-crypto=nettle,-Dhls=disabled,nettle" | 49 | PACKAGECONFIG[hls] = "-Dhls=enabled,-Dhls=disabled," |
50 | # Pick atleast one crypto backend below when enabling hls | ||
51 | PACKAGECONFIG[nettle] = "-Dhls-crypto=nettle,,nettle" | ||
52 | PACKAGECONFIG[openssl] = "-Dhls-crypto=openssl,,openssl" | ||
53 | PACKAGECONFIG[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. |
52 | PACKAGECONFIG[gl] = "-Dgl=enabled,-Dgl=disabled," | 57 | PACKAGECONFIG[gl] = "-Dgl=enabled,-Dgl=disabled," |
53 | PACKAGECONFIG[kms] = "-Dkms=enabled,-Dkms=disabled,libdrm" | 58 | PACKAGECONFIG[kms] = "-Dkms=enabled,-Dkms=disabled,libdrm" |
54 | PACKAGECONFIG[libde265] = "-Dlibde265=enabled,-Dlibde265=disabled,libde265" | 59 | PACKAGECONFIG[libde265] = "-Dlibde265=enabled,-Dlibde265=disabled,libde265" |
55 | PACKAGECONFIG[libmms] = "-Dlibmms=enabled,-Dlibmms=disabled,libmms" | ||
56 | PACKAGECONFIG[libssh2] = "-Dcurl-ssh2=enabled,-Dcurl-ssh2=disabled,libssh2" | 60 | PACKAGECONFIG[libssh2] = "-Dcurl-ssh2=enabled,-Dcurl-ssh2=disabled,libssh2" |
57 | PACKAGECONFIG[lcms2] = "-Dcolormanagement=enabled,-Dcolormanagement=disabled,lcms" | 61 | PACKAGECONFIG[lcms2] = "-Dcolormanagement=enabled,-Dcolormanagement=disabled,lcms" |
58 | PACKAGECONFIG[modplug] = "-Dmodplug=enabled,-Dmodplug=disabled,libmodplug" | 62 | PACKAGECONFIG[modplug] = "-Dmodplug=enabled,-Dmodplug=disabled,libmodplug" |
59 | PACKAGECONFIG[msdk] = "-Dmsdk=enabled,-Dmsdk=disabled,intel-mediasdk" | 63 | PACKAGECONFIG[msdk] = "-Dmsdk=enabled -Dmfx_api=oneVPL,-Dmsdk=disabled,onevpl-intel-gpu" |
60 | PACKAGECONFIG[neon] = "-Dneon=enabled,-Dneon=disabled,neon" | 64 | PACKAGECONFIG[neon] = "-Dneon=enabled,-Dneon=disabled,neon" |
61 | PACKAGECONFIG[openal] = "-Dopenal=enabled,-Dopenal=disabled,openal-soft" | 65 | PACKAGECONFIG[openal] = "-Dopenal=enabled,-Dopenal=disabled,openal-soft" |
62 | PACKAGECONFIG[opencv] = "-Dopencv=enabled,-Dopencv=disabled,opencv" | 66 | PACKAGECONFIG[opencv] = "-Dopencv=enabled,-Dopencv=disabled,opencv" |
@@ -78,6 +82,8 @@ PACKAGECONFIG[srtp] = "-Dsrtp=enabled,-Dsrtp=disabled,libsrtp" | |||
78 | PACKAGECONFIG[tinyalsa] = "-Dtinyalsa=enabled,-Dtinyalsa=disabled,tinyalsa" | 82 | PACKAGECONFIG[tinyalsa] = "-Dtinyalsa=enabled,-Dtinyalsa=disabled,tinyalsa" |
79 | PACKAGECONFIG[ttml] = "-Dttml=enabled,-Dttml=disabled,libxml2 pango cairo" | 83 | PACKAGECONFIG[ttml] = "-Dttml=enabled,-Dttml=disabled,libxml2 pango cairo" |
80 | PACKAGECONFIG[uvch264] = "-Duvch264=enabled,-Duvch264=disabled,libusb1 libgudev" | 84 | PACKAGECONFIG[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 | ||
81 | PACKAGECONFIG[v4l2codecs] = "-Dv4l2codecs=enabled,-Dv4l2codecs=disabled,libgudev" | 87 | PACKAGECONFIG[v4l2codecs] = "-Dv4l2codecs=enabled,-Dv4l2codecs=disabled,libgudev" |
82 | PACKAGECONFIG[va] = "-Dva=enabled,-Dva=disabled,libva" | 88 | PACKAGECONFIG[va] = "-Dva=enabled,-Dva=disabled,libva" |
83 | PACKAGECONFIG[voaacenc] = "-Dvoaacenc=enabled,-Dvoaacenc=disabled,vo-aacenc" | 89 | PACKAGECONFIG[voaacenc] = "-Dvoaacenc=enabled,-Dvoaacenc=disabled,vo-aacenc" |
@@ -88,10 +94,15 @@ PACKAGECONFIG[webp] = "-Dwebp=enabled,-Dwebp=disabled,libwebp" | |||
88 | PACKAGECONFIG[webrtc] = "-Dwebrtc=enabled,-Dwebrtc=disabled,libnice" | 94 | PACKAGECONFIG[webrtc] = "-Dwebrtc=enabled,-Dwebrtc=disabled,libnice" |
89 | PACKAGECONFIG[webrtcdsp] = "-Dwebrtcdsp=enabled,-Dwebrtcdsp=disabled,webrtc-audio-processing" | 95 | PACKAGECONFIG[webrtcdsp] = "-Dwebrtcdsp=enabled,-Dwebrtcdsp=disabled,webrtc-audio-processing" |
90 | PACKAGECONFIG[zbar] = "-Dzbar=enabled,-Dzbar=disabled,zbar" | 96 | PACKAGECONFIG[zbar] = "-Dzbar=enabled,-Dzbar=disabled,zbar" |
97 | PACKAGECONFIG[x11] = "-Dx11=enabled,-Dx11=disabled,libxcb libxkbcommon" | ||
91 | PACKAGECONFIG[x265] = "-Dx265=enabled,-Dx265=disabled,x265" | 98 | PACKAGECONFIG[x265] = "-Dx265=enabled,-Dx265=disabled,x265" |
92 | 99 | ||
100 | GSTREAMER_GPL = "${@bb.utils.filter('PACKAGECONFIG', 'faad resindvd x265', d)}" | ||
101 | |||
93 | EXTRA_OEMESON += " \ | 102 | EXTRA_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 | ||
142 | export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}" | 157 | export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}" |
143 | 158 | ||
144 | ARM_INSTRUCTION_SET_armv4 = "arm" | 159 | ARM_INSTRUCTION_SET:armv4 = "arm" |
145 | ARM_INSTRUCTION_SET_armv5 = "arm" | 160 | ARM_INSTRUCTION_SET:armv5 = "arm" |
146 | |||
147 | FILES_${PN}-freeverb += "${datadir}/gstreamer-1.0/presets/GstFreeverb.prs" | ||
148 | FILES_${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*" | ||
149 | FILES_${PN}-transcode += "${datadir}/gstreamer-1.0/encoding-profiles" | ||
150 | FILES_${PN}-voamrwbenc += "${datadir}/gstreamer-1.0/presets/GstVoAmrwbEnc.prs" | ||
151 | 161 | ||
162 | FILES:${PN}-freeverb += "${datadir}/gstreamer-1.0/presets/GstFreeverb.prs" | ||
163 | FILES:${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*" | ||
164 | FILES:${PN}-transcode += "${datadir}/gstreamer-1.0/encoding-profiles" | ||
165 | FILES:${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 @@ | |||
1 | From f9d48cd85ee68207733b1b91a00453462c33524a Mon Sep 17 00:00:00 2001 | 1 | From 63fe5a7b4ef70e2c490bad3b0838329935a8d77c Mon Sep 17 00:00:00 2001 |
2 | From: zhouming <b42586@freescale.com> | 2 | From: zhouming <b42586@freescale.com> |
3 | Date: Wed, 14 May 2014 10:16:20 +0800 | 3 | Date: Wed, 14 May 2014 10:16:20 +0800 |
4 | Subject: [PATCH 1/4] ENGR00312515: get caps from src pad when query caps | 4 | Subject: [PATCH] ENGR00312515: get caps from src pad when query caps |
5 | 5 | ||
6 | https://bugzilla.gnome.org/show_bug.cgi?id=728312 | 6 | https://bugzilla.gnome.org/show_bug.cgi?id=728312 |
7 | 7 | ||
8 | Upstream-Status: Pending | 8 | Upstream-Status: Pending |
9 | 9 | ||
10 | Signed-off-by: zhouming <b42586@freescale.com> | 10 | Signed-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> | |||
16 | diff --git a/gst-libs/gst/tag/gsttagdemux.c b/gst-libs/gst/tag/gsttagdemux.c | 17 | diff --git a/gst-libs/gst/tag/gsttagdemux.c b/gst-libs/gst/tag/gsttagdemux.c |
17 | old mode 100644 | 18 | old mode 100644 |
18 | new mode 100755 | 19 | new mode 100755 |
19 | index f545857..62d10ef | 20 | index 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 | -- | ||
43 | 2.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 @@ | |||
1 | From f587861bbe12ad0b10370f835592746aafedbf56 Mon Sep 17 00:00:00 2001 | 1 | From 7bf9525528c8f4a47413d7f82214d76f95f0c5f6 Mon Sep 17 00:00:00 2001 |
2 | From: Mingke Wang <mingke.wang@freescale.com> | 2 | From: Mingke Wang <mingke.wang@freescale.com> |
3 | Date: Thu, 19 Mar 2015 14:17:10 +0800 | 3 | Date: Thu, 19 Mar 2015 14:17:10 +0800 |
4 | Subject: [PATCH 2/4] ssaparse: enhance SSA text lines parsing. | 4 | Subject: [PATCH] ssaparse: enhance SSA text lines parsing. |
5 | 5 | ||
6 | some parser will pass in the original ssa text line which starts with "Dialog:" | 6 | some parser will pass in the original ssa text line which starts with "Dialog:" |
7 | and there's are maybe multiple Dialog lines in one input buffer. | 7 | and there's are maybe multiple Dialog lines in one input buffer. |
8 | 8 | ||
9 | Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=747496] | 9 | Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/178] |
10 | 10 | ||
11 | Signed-off-by: Mingke Wang <mingke.wang@freescale.com> | 11 | Signed-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> | |||
17 | diff --git a/gst/subparse/gstssaparse.c b/gst/subparse/gstssaparse.c | 18 | diff --git a/gst/subparse/gstssaparse.c b/gst/subparse/gstssaparse.c |
18 | old mode 100644 | 19 | old mode 100644 |
19 | new mode 100755 | 20 | new mode 100755 |
20 | index c849c08..4b9636c | 21 | index 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 | -- | ||
228 | 2.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 @@ | |||
1 | From 153f3b83a3fed77785bd1420bed8bbafa2d791b3 Mon Sep 17 00:00:00 2001 | 1 | From 2b07840122bc2e83bd23dad59aa80d9479f2e1e4 Mon Sep 17 00:00:00 2001 |
2 | From: Carlos Rafael Giani <crg7475@mailbox.org> | 2 | From: Carlos Rafael Giani <crg7475@mailbox.org> |
3 | Date: Tue, 21 May 2019 14:01:11 +0200 | 3 | Date: Tue, 21 May 2019 14:01:11 +0200 |
4 | Subject: [PATCH 3/4] viv-fb: Make sure config.h is included | 4 | Subject: [PATCH] viv-fb: Make sure config.h is included |
5 | 5 | ||
6 | This prevents build errors due to missing GST_API_* symbols | 6 | This prevents build errors due to missing GST_API_* symbols |
7 | 7 | ||
8 | Upstream-Status: Pending | 8 | Upstream-Status: Pending |
9 | 9 | ||
10 | Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org> | 10 | Signed-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 | ||
15 | diff --git a/gst-libs/gst/gl/gl-prelude.h b/gst-libs/gst/gl/gl-prelude.h | 16 | diff --git a/gst-libs/gst/gl/gl-prelude.h b/gst-libs/gst/gl/gl-prelude.h |
16 | index 05e1f62..96ce5e6 100644 | 17 | index 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 | -- | ||
31 | 2.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 @@ | |||
1 | From 79841a02ee754eba736cb32aaf2ed2b2fc0483d4 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Kanavin <alex.kanavin@gmail.com> | ||
3 | Date: Thu, 24 Sep 2015 19:47:32 +0300 | ||
4 | Subject: [PATCH 4/4] glimagesink: Downrank to marginal | ||
5 | |||
6 | On desktop, where there is good OpenGL, xvimagesink will come up first, | ||
7 | on other platforms, OpenGL can't be trusted because it's either software (like | ||
8 | in a VM) or broken (like on embedded)., so let ximagesink come above. | ||
9 | |||
10 | Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=751684] | ||
11 | |||
12 | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> | ||
13 | --- | ||
14 | ext/gl/gstopengl.c | 2 +- | ||
15 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
16 | |||
17 | diff --git a/ext/gl/gstopengl.c b/ext/gl/gstopengl.c | ||
18 | index 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 | -- | ||
31 | 2.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 @@ | |||
1 | require gstreamer1.0-plugins-common.inc | 1 | require gstreamer1.0-plugins-common.inc |
2 | 2 | ||
3 | DESCRIPTION = "'Base' GStreamer plugins and helper libraries" | 3 | SUMMARY = "'Base' GStreamer plugins and helper libraries" |
4 | HOMEPAGE = "https://gstreamer.freedesktop.org/" | 4 | HOMEPAGE = "https://gstreamer.freedesktop.org/" |
5 | BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues" | 5 | BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues" |
6 | LICENSE = "GPLv2+ & LGPLv2+" | 6 | LICENSE = "LGPL-2.1-or-later" |
7 | LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d" | 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770" |
8 | 8 | ||
9 | SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-${PV}.tar.xz \ | 9 | SRC_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 | " |
15 | SRC_URI[sha256sum] = "dbfa20283848f0347a223dd8523dfb62e09e5220b21b1d157a8b0c8b67ba9f52" | 14 | SRC_URI[sha256sum] = "65eaf72296cc5edc985695a4d80affc931e64a79f4879d05615854f7a2cf5bd1" |
16 | 15 | ||
17 | S = "${WORKDIR}/gst-plugins-base-${PV}" | 16 | S = "${WORKDIR}/gst-plugins-base-${PV}" |
18 | 17 | ||
@@ -20,11 +19,10 @@ DEPENDS += "iso-codes util-linux zlib" | |||
20 | 19 | ||
21 | inherit gobject-introspection | 20 | inherit gobject-introspection |
22 | 21 | ||
23 | PACKAGES_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 |
27 | PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}" | 24 | PACKAGECONFIG_X11 = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'opengl glx', '', d)}" |
25 | PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl ${PACKAGECONFIG_X11}', '', d)}" | ||
28 | 26 | ||
29 | PACKAGECONFIG ??= " \ | 27 | PACKAGECONFIG ??= " \ |
30 | ${GSTREAMER_ORC} \ | 28 | ${GSTREAMER_ORC} \ |
@@ -35,7 +33,7 @@ PACKAGECONFIG ??= " \ | |||
35 | " | 33 | " |
36 | 34 | ||
37 | OPENGL_APIS = 'opengl gles2' | 35 | OPENGL_APIS = 'opengl gles2' |
38 | OPENGL_PLATFORMS = 'egl' | 36 | OPENGL_PLATFORMS = 'egl glx' |
39 | 37 | ||
40 | X11DEPENDS = "virtual/libx11 libsm libxrender libxv" | 38 | X11DEPENDS = "virtual/libx11 libsm libxrender libxv" |
41 | X11ENABLEOPTS = "-Dx11=enabled -Dxvideo=enabled -Dxshm=enabled" | 39 | X11ENABLEOPTS = "-Dx11=enabled -Dxvideo=enabled -Dxshm=enabled" |
@@ -43,11 +41,15 @@ X11DISABLEOPTS = "-Dx11=disabled -Dxvideo=disabled -Dxshm=disabled" | |||
43 | 41 | ||
44 | PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib" | 42 | PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib" |
45 | PACKAGECONFIG[cdparanoia] = "-Dcdparanoia=enabled,-Dcdparanoia=disabled,cdparanoia" | 43 | PACKAGECONFIG[cdparanoia] = "-Dcdparanoia=enabled,-Dcdparanoia=disabled,cdparanoia" |
44 | PACKAGECONFIG[graphene] = "-Dgl-graphene=enabled,-Dgl-graphene=disabled,graphene" | ||
46 | PACKAGECONFIG[jpeg] = "-Dgl-jpeg=enabled,-Dgl-jpeg=disabled,jpeg" | 45 | PACKAGECONFIG[jpeg] = "-Dgl-jpeg=enabled,-Dgl-jpeg=disabled,jpeg" |
47 | PACKAGECONFIG[ogg] = "-Dogg=enabled,-Dogg=disabled,libogg" | 46 | PACKAGECONFIG[ogg] = "-Dogg=enabled,-Dogg=disabled,libogg" |
48 | PACKAGECONFIG[opus] = "-Dopus=enabled,-Dopus=disabled,libopus" | 47 | PACKAGECONFIG[opus] = "-Dopus=enabled,-Dopus=disabled,libopus" |
49 | PACKAGECONFIG[pango] = "-Dpango=enabled,-Dpango=disabled,pango" | 48 | PACKAGECONFIG[pango] = "-Dpango=enabled,-Dpango=disabled,pango" |
50 | PACKAGECONFIG[png] = "-Dgl-png=enabled,-Dgl-png=disabled,libpng" | 49 | PACKAGECONFIG[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. | ||
52 | PACKAGECONFIG[qt5] = "-Dqt5=enabled,-Dqt5=disabled,qtbase qtdeclarative qtbase-native" | ||
51 | PACKAGECONFIG[theora] = "-Dtheora=enabled,-Dtheora=disabled,libtheora" | 53 | PACKAGECONFIG[theora] = "-Dtheora=enabled,-Dtheora=disabled,libtheora" |
52 | PACKAGECONFIG[tremor] = "-Dtremor=enabled,-Dtremor=disabled,tremor" | 54 | PACKAGECONFIG[tremor] = "-Dtremor=enabled,-Dtremor=disabled,tremor" |
53 | PACKAGECONFIG[visual] = "-Dlibvisual=enabled,-Dlibvisual=disabled,libvisual" | 55 | PACKAGECONFIG[visual] = "-Dlibvisual=enabled,-Dlibvisual=disabled,libvisual" |
@@ -60,28 +62,25 @@ PACKAGECONFIG[gles2] = ",,virtual/libgles2" | |||
60 | 62 | ||
61 | # OpenGL platform packageconfigs | 63 | # OpenGL platform packageconfigs |
62 | PACKAGECONFIG[egl] = ",,virtual/egl" | 64 | PACKAGECONFIG[egl] = ",,virtual/egl" |
65 | PACKAGECONFIG[glx] = ",,virtual/libgl" | ||
63 | 66 | ||
64 | # OpenGL window systems (except for X11) | 67 | # OpenGL window systems (except for X11) |
65 | PACKAGECONFIG[gbm] = ",,virtual/libgbm libgudev libdrm" | 68 | PACKAGECONFIG[gbm] = ",,virtual/libgbm libgudev libdrm" |
66 | PACKAGECONFIG[wayland] = ",,wayland-native wayland wayland-protocols libdrm" | 69 | PACKAGECONFIG[wayland] = ",,wayland-native wayland wayland-protocols libdrm" |
67 | PACKAGECONFIG[dispmanx] = ",,virtual/libomxil" | 70 | PACKAGECONFIG[dispmanx] = ",,virtual/libomxil" |
71 | PACKAGECONFIG[viv-fb] = ",,virtual/libgles2 virtual/libg2d" | ||
68 | 72 | ||
69 | OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'x11', ' x11', '', d)}" | 73 | OPENGL_WINSYS = "${@bb.utils.filter('PACKAGECONFIG', 'x11 gbm wayland dispmanx egl viv-fb', d)}" |
70 | OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'gbm', ' gbm', '', d)}" | ||
71 | OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'wayland', ' wayland', '', d)}" | ||
72 | OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'dispmanx', ' dispmanx', '', d)}" | ||
73 | OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'egl', ' egl', '', d)}" | ||
74 | 74 | ||
75 | EXTRA_OEMESON += " \ | 75 | EXTRA_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 | ||
83 | FILES_${PN}-dev += "${libdir}/gstreamer-1.0/include/gst/gl/gstglconfig.h" | 82 | FILES:${PN}-dev += "${libdir}/gstreamer-1.0/include/gst/gl/gstglconfig.h" |
84 | FILES_${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict" | 83 | FILES:${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict" |
85 | 84 | ||
86 | def get_opengl_cmdline_list(switch_name, options, d): | 85 | def 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 |
24 | GSTREAMER_ORC_mips = "" | 24 | GSTREAMER_ORC:mips = "" |
25 | PACKAGECONFIG[orc] = "-Dorc=enabled,-Dorc=disabled,orc orc-native" | 25 | PACKAGECONFIG[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 | ||
46 | GIR_MESON_ENABLE_FLAG = "enabled" | 46 | GIR_MESON_ENABLE_FLAG = "enabled" |
47 | GIR_MESON_DISABLE_FLAG = "disabled" | 47 | GIR_MESON_DISABLE_FLAG = "disabled" |
48 | |||
49 | # Dynamically generate packages for all enabled plugins | ||
50 | PACKAGES_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 @@ | |||
1 | From bf8b2fa0f6870589d036f0f33c140a3f85b530a0 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Tue, 31 Mar 2020 21:23:28 -0700 | ||
4 | Subject: [PATCH] qt: include ext/qt/gstqtgl.h instead of gst/gl/gstglfuncs.h | ||
5 | |||
6 | gst/gl/gstglfuncs.h is included via ext/qt/gstqtgl.h which has logic to | ||
7 | prefer qt headers definitions for GLsync | ||
8 | |||
9 | This 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 | | ^~~~~~ | ||
14 | In 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 | |||
21 | Upstream-Status: Pending | ||
22 | Signed-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 | |||
28 | diff --git a/ext/qt/gstqsgtexture.cc b/ext/qt/gstqsgtexture.cc | ||
29 | index 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 | ||
41 | diff --git a/ext/qt/qtwindow.cc b/ext/qt/qtwindow.cc | ||
42 | index 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 | -- | ||
55 | 2.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 @@ | |||
1 | From b77d4806fd5de50d0b017a3e6a19c5bfdef7b3e4 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Mon, 13 Feb 2023 12:47:31 -0800 | ||
4 | Subject: [PATCH] v4l2: Define ioctl_req_t for posix/linux case | ||
5 | |||
6 | this is an issue seen with musl based linux distros e.g. alpine [1] | ||
7 | musl is not going to change this since it breaks ABI/API interfaces | ||
8 | Newer compilers are stringent ( e.g. clang16 ) which can now detect | ||
9 | signature mismatches in function pointers too, existing code warned but | ||
10 | did not error with older clang | ||
11 | |||
12 | Fixes | ||
13 | gstv4l2object.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 | |||
19 | Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3950] | ||
20 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
21 | |||
22 | --- | ||
23 | sys/v4l2/gstv4l2object.h | 2 ++ | ||
24 | 1 file changed, 2 insertions(+) | ||
25 | |||
26 | diff --git a/sys/v4l2/gstv4l2object.h b/sys/v4l2/gstv4l2object.h | ||
27 | index 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 @@ | |||
1 | require gstreamer1.0-plugins-common.inc | 1 | require gstreamer1.0-plugins-common.inc |
2 | 2 | ||
3 | DESCRIPTION = "'Good' GStreamer plugins" | 3 | SUMMARY = "'Good' GStreamer plugins" |
4 | HOMEPAGE = "https://gstreamer.freedesktop.org/" | 4 | HOMEPAGE = "https://gstreamer.freedesktop.org/" |
5 | BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues" | 5 | BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues" |
6 | 6 | ||
7 | SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz \ | 7 | SRC_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 | ||
11 | SRC_URI[sha256sum] = "9b3b8e05d4d6073bf929fb33e2d8f74dd81ff21fa5b50c3273c78dfa2ab9c5cb" | 10 | SRC_URI[sha256sum] = "6ddd032381827d31820540735f0004b429436b0bdac19aaeab44fa22faad52e2" |
12 | 11 | ||
13 | S = "${WORKDIR}/gst-plugins-good-${PV}" | 12 | S = "${WORKDIR}/gst-plugins-good-${PV}" |
14 | 13 | ||
15 | LICENSE = "GPLv2+ & LGPLv2.1+" | 14 | LICENSE = "LGPL-2.1-or-later" |
16 | LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ | 15 | LIC_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 | ||
19 | DEPENDS += "gstreamer1.0-plugins-base libcap zlib" | 18 | DEPENDS += "gstreamer1.0-plugins-base libcap zlib" |
20 | RPROVIDES_${PN}-pulseaudio += "${PN}-pulse" | 19 | RPROVIDES:${PN}-pulseaudio += "${PN}-pulse" |
21 | RPROVIDES_${PN}-soup += "${PN}-souphttpsrc" | 20 | RPROVIDES:${PN}-soup += "${PN}-souphttpsrc" |
21 | RDEPENDS:${PN}-soup += "${MLPREFIX}${@bb.utils.contains('PACKAGECONFIG', 'soup2', 'libsoup-2.4', 'libsoup', d)}" | ||
22 | |||
23 | PACKAGECONFIG_SOUP ?= "soup3" | ||
22 | 24 | ||
23 | PACKAGECONFIG ??= " \ | 25 | PACKAGECONFIG ??= " \ |
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 | ||
30 | X11DEPENDS = "virtual/libx11 libsm libxrender libxfixes libxdamage" | 33 | X11DEPENDS = "virtual/libx11 libsm libxrender libxfixes libxdamage" |
@@ -48,8 +51,9 @@ PACKAGECONFIG[libpng] = "-Dpng=enabled,-Dpng=disabled,libpng" | |||
48 | PACKAGECONFIG[libv4l2] = "-Dv4l2-libv4l2=enabled,-Dv4l2-libv4l2=disabled,v4l-utils" | 51 | PACKAGECONFIG[libv4l2] = "-Dv4l2-libv4l2=enabled,-Dv4l2-libv4l2=disabled,v4l-utils" |
49 | PACKAGECONFIG[mpg123] = "-Dmpg123=enabled,-Dmpg123=disabled,mpg123" | 52 | PACKAGECONFIG[mpg123] = "-Dmpg123=enabled,-Dmpg123=disabled,mpg123" |
50 | PACKAGECONFIG[pulseaudio] = "-Dpulse=enabled,-Dpulse=disabled,pulseaudio" | 53 | PACKAGECONFIG[pulseaudio] = "-Dpulse=enabled,-Dpulse=disabled,pulseaudio" |
51 | PACKAGECONFIG[qt5] = "-Dqt5=enabled,-Dqt5=disabled,qtbase qtdeclarative qtbase-native ${QT5WAYLANDDEPENDS}" | 54 | PACKAGECONFIG[qt5] = "-Dqt5=enabled,-Dqt5=disabled,qtbase qtdeclarative qtbase-native qttools-native ${QT5WAYLANDDEPENDS}" |
52 | PACKAGECONFIG[soup] = "-Dsoup=enabled,-Dsoup=disabled,libsoup-2.4" | 55 | PACKAGECONFIG[soup2] = "-Dsoup=enabled,,libsoup-2.4,,,soup3" |
56 | PACKAGECONFIG[soup3] = "-Dsoup=enabled,,libsoup,,,soup2" | ||
53 | PACKAGECONFIG[speex] = "-Dspeex=enabled,-Dspeex=disabled,speex" | 57 | PACKAGECONFIG[speex] = "-Dspeex=enabled,-Dspeex=disabled,speex" |
54 | PACKAGECONFIG[rpi] = "-Drpicamsrc=enabled,-Drpicamsrc=disabled,userland" | 58 | PACKAGECONFIG[rpi] = "-Drpicamsrc=enabled,-Drpicamsrc=disabled,userland" |
55 | PACKAGECONFIG[taglib] = "-Dtaglib=enabled,-Dtaglib=disabled,taglib" | 59 | PACKAGECONFIG[taglib] = "-Dtaglib=enabled,-Dtaglib=disabled,taglib" |
@@ -73,4 +77,4 @@ EXTRA_OEMESON += " \ | |||
73 | -Dwaveform=disabled \ | 77 | -Dwaveform=disabled \ |
74 | " | 78 | " |
75 | 79 | ||
76 | FILES_${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs" | 80 | FILES:${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 | |||
4 | PACKAGESPLITFUNCS += "set_gstreamer_license" | ||
5 | |||
6 | python 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 | |||
17 | EXTRA_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 | ||
9 | PACKAGESPLITFUNCS_prepend = " split_gstreamer10_packages " | 9 | # Dynamically generate packages for all enabled plugins |
10 | PACKAGESPLITFUNCS_append = " set_gstreamer10_metapkg_rdepends " | 10 | PACKAGES_DYNAMIC = "^${PN}-.* ^libgst.*" |
11 | |||
12 | PACKAGESPLITFUNCS =+ "split_gstreamer10_packages" | ||
13 | PACKAGESPLITFUNCS += "set_gstreamer10_metapkg_rdepends" | ||
11 | 14 | ||
12 | python split_gstreamer10_packages () { | 15 | python 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) |
60 | ALLOW_EMPTY_${PN} = "1" | 63 | ALLOW_EMPTY:${PN} = "1" |
61 | ALLOW_EMPTY_${PN}-dev = "1" | 64 | ALLOW_EMPTY:${PN}-dev = "1" |
62 | ALLOW_EMPTY_${PN}-staticdev = "1" | 65 | ALLOW_EMPTY:${PN}-staticdev = "1" |
63 | 66 | ||
64 | PACKAGES += "${PN}-apps ${PN}-meta ${PN}-glib" | 67 | PACKAGES += "${PN}-apps ${PN}-meta ${PN}-glib" |
65 | 68 | ||
66 | FILES_${PN} = "" | 69 | FILES:${PN} = "" |
67 | FILES_${PN}-apps = "${bindir}" | 70 | FILES:${PN}-apps = "${bindir}" |
68 | FILES_${PN}-glib = "${datadir}/glib-2.0" | 71 | FILES:${PN}-glib = "${datadir}/glib-2.0" |
69 | 72 | ||
70 | RRECOMMENDS_${PN} += "${PN}-meta" | 73 | RRECOMMENDS:${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 @@ | |||
1 | require gstreamer1.0-plugins-common.inc | 1 | require gstreamer1.0-plugins-common.inc |
2 | require gstreamer1.0-plugins-license.inc | ||
2 | 3 | ||
3 | DESCRIPTION = "'Ugly GStreamer plugins" | 4 | SUMMARY = "'Ugly GStreamer plugins" |
4 | HOMEPAGE = "https://gstreamer.freedesktop.org/" | 5 | HOMEPAGE = "https://gstreamer.freedesktop.org/" |
5 | BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-ugly/-/issues" | 6 | BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-ugly/-/issues" |
6 | 7 | ||
7 | LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ | 8 | LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ |
8 | file://tests/check/elements/xingmux.c;beginline=1;endline=21;md5=4c771b8af188724855cb99cadd390068" | 9 | " |
9 | 10 | ||
10 | LICENSE = "GPLv2+ & LGPLv2.1+ & LGPLv2+" | 11 | LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later" |
11 | LICENSE_FLAGS = "commercial" | 12 | LICENSE_FLAGS = "commercial" |
12 | 13 | ||
13 | SRC_URI = " \ | 14 | SRC_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 | " |
16 | SRC_URI[sha256sum] = "70f7429b25dd2f714eb18e80af61b1363b1f63019e16cd28e086e3a619eaa992" | 17 | |
18 | SRC_URI[sha256sum] = "7758b7decfd20c00cae5700822bcbbf03f98c723e33e17634db2e07ca1da60bf" | ||
17 | 19 | ||
18 | S = "${WORKDIR}/gst-plugins-ugly-${PV}" | 20 | S = "${WORKDIR}/gst-plugins-ugly-${PV}" |
19 | 21 | ||
@@ -23,21 +25,22 @@ GST_PLUGIN_SET_HAS_EXAMPLES = "0" | |||
23 | 25 | ||
24 | PACKAGECONFIG ??= " \ | 26 | PACKAGECONFIG ??= " \ |
25 | ${GSTREAMER_ORC} \ | 27 | ${GSTREAMER_ORC} \ |
26 | a52dec mpeg2dec \ | ||
27 | " | 28 | " |
28 | 29 | ||
29 | PACKAGECONFIG[a52dec] = "-Da52dec=enabled,-Da52dec=disabled,liba52" | ||
30 | PACKAGECONFIG[amrnb] = "-Damrnb=enabled,-Damrnb=disabled,opencore-amr" | 30 | PACKAGECONFIG[amrnb] = "-Damrnb=enabled,-Damrnb=disabled,opencore-amr" |
31 | PACKAGECONFIG[amrwb] = "-Damrwbdec=enabled,-Damrwbdec=disabled,opencore-amr" | 31 | PACKAGECONFIG[amrwb] = "-Damrwbdec=enabled,-Damrwbdec=disabled,opencore-amr" |
32 | PACKAGECONFIG[a52dec] = "-Da52dec=enabled,-Da52dec=disabled,liba52" | ||
32 | PACKAGECONFIG[cdio] = "-Dcdio=enabled,-Dcdio=disabled,libcdio" | 33 | PACKAGECONFIG[cdio] = "-Dcdio=enabled,-Dcdio=disabled,libcdio" |
33 | PACKAGECONFIG[dvdread] = "-Ddvdread=enabled,-Ddvdread=disabled,libdvdread" | 34 | PACKAGECONFIG[dvdread] = "-Ddvdread=enabled,-Ddvdread=disabled,libdvdread" |
34 | PACKAGECONFIG[mpeg2dec] = "-Dmpeg2dec=enabled,-Dmpeg2dec=disabled,mpeg2dec" | 35 | PACKAGECONFIG[mpeg2dec] = "-Dmpeg2dec=enabled,-Dmpeg2dec=disabled,mpeg2dec" |
35 | PACKAGECONFIG[x264] = "-Dx264=enabled,-Dx264=disabled,x264" | 36 | PACKAGECONFIG[x264] = "-Dx264=enabled,-Dx264=disabled,x264" |
36 | 37 | ||
38 | GSTREAMER_GPL = "${@bb.utils.filter('PACKAGECONFIG', 'a52dec cdio dvdread mpeg2dec x264', d)}" | ||
39 | |||
37 | EXTRA_OEMESON += " \ | 40 | EXTRA_OEMESON += " \ |
38 | -Ddoc=disabled \ | 41 | -Ddoc=disabled \ |
39 | -Dsidplay=disabled \ | 42 | -Dsidplay=disabled \ |
40 | " | 43 | " |
41 | 44 | ||
42 | FILES_${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs" | 45 | FILES:${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs" |
43 | FILES_${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs" | 46 | FILES:${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 @@ | |||
1 | inherit ptest-gnome | ||
2 | |||
3 | TEST_FILES_PATH = "${datadir}/installed-tests/gstreamer-1.0/test-files" | ||
4 | RUN_PTEST_FILE = "${D}${PTEST_PATH}/run-ptest" | ||
5 | |||
6 | EXTRA_OEMESON += "-Dtest-files-path=${TEST_FILES_PATH}" | ||
7 | |||
8 | GST_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. | ||
12 | do_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) " | |||
4 | HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-python/" | 4 | HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-python/" |
5 | SECTION = "multimedia" | 5 | SECTION = "multimedia" |
6 | 6 | ||
7 | LICENSE = "LGPLv2.1" | 7 | LICENSE = "LGPL-2.1-or-later" |
8 | LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740" | 8 | LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740" |
9 | 9 | ||
10 | SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz" | 10 | SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz" |
11 | SRC_URI[sha256sum] = "4e630735276e08ff4d70337aa5d91fd008e5f1ed3dc0993674cd5820e264259a" | 11 | SRC_URI[sha256sum] = "f7a5450d93fd81bf46060dca7f4a048d095b6717961fec211731a11a994c99a7" |
12 | 12 | ||
13 | DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject" | 13 | DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject" |
14 | RDEPENDS_${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject" | 14 | RDEPENDS:${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject" |
15 | 15 | ||
16 | PNREAL = "gst-python" | 16 | PNREAL = "gst-python" |
17 | 17 | ||
18 | S = "${WORKDIR}/${PNREAL}-${PV}" | 18 | S = "${WORKDIR}/${PNREAL}-${PV}" |
19 | 19 | ||
20 | EXTRA_OEMESON += "-Dlibpython-dir=${libdir}" | 20 | EXTRA_OEMESON += "\ |
21 | -Dtests=disabled \ | ||
22 | -Dplugin=enabled \ | ||
23 | -Dlibpython-dir=${libdir} \ | ||
24 | " | ||
21 | 25 | ||
22 | # gobject-introspection is mandatory and cannot be configured | 26 | inherit meson pkgconfig setuptools3-base upstream-version-is-even features_check |
23 | REQUIRED_DISTRO_FEATURES = "gobject-introspection-data" | 27 | |
24 | UNKNOWN_CONFIGURE_WHITELIST_append = " introspection" | 28 | FILES:${PN} += "${libdir}/gstreamer-1.0" |
25 | 29 | ||
26 | inherit meson pkgconfig distutils3-base upstream-version-is-even gobject-introspection features_check | 30 | REQUIRED_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 @@ | |||
1 | SUMMARY = "A library on top of GStreamer for building an RTSP server" | 1 | SUMMARY = "A library on top of GStreamer for building an RTSP server" |
2 | HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-rtsp-server/" | 2 | HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-rtsp-server/" |
3 | SECTION = "multimedia" | 3 | SECTION = "multimedia" |
4 | LICENSE = "LGPLv2" | 4 | LICENSE = "LGPL-2.1-or-later" |
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d" | 5 | LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770" |
6 | 6 | ||
7 | DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base" | 7 | DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base" |
8 | 8 | ||
@@ -10,7 +10,7 @@ PNREAL = "gst-rtsp-server" | |||
10 | 10 | ||
11 | SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz" | 11 | SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz" |
12 | 12 | ||
13 | SRC_URI[sha256sum] = "4f7757293b3d73dc49768b7392791668c4d0c21d41824624ffbd75c7f9ee0168" | 13 | SRC_URI[sha256sum] = "ec49d474750a6ff6729c85b448abc607fb6840b21717ad7abc967e2adbf07a24" |
14 | 14 | ||
15 | S = "${WORKDIR}/${PNREAL}-${PV}" | 15 | S = "${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 @@ | |||
1 | SUMMARY = "VA-API support to GStreamer" | 1 | SUMMARY = "VA-API support to GStreamer" |
2 | HOMEPAGE = "https://gstreamer.freedesktop.org/" | ||
2 | DESCRIPTION = "gstreamer-vaapi consists of a collection of VA-API \ | 3 | DESCRIPTION = "gstreamer-vaapi consists of a collection of VA-API \ |
3 | based plugins for GStreamer and helper libraries: `vaapidecode', \ | 4 | based plugins for GStreamer and helper libraries: `vaapidecode', \ |
4 | `vaapiconvert', and `vaapisink'." | 5 | `vaapiconvert', and `vaapisink'." |
5 | 6 | ||
6 | REALPN = "gstreamer-vaapi" | 7 | REALPN = "gstreamer-vaapi" |
7 | 8 | ||
8 | LICENSE = "LGPLv2.1+" | 9 | LICENSE = "LGPL-2.1-or-later" |
9 | LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c" | 10 | LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c" |
10 | 11 | ||
11 | SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz" | 12 | SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz" |
12 | 13 | ||
13 | SRC_URI[sha256sum] = "ae9877f15757a661d4dfe6a09755a2faa959ab60752f14ca26b7ff10765e1f12" | 14 | SRC_URI[sha256sum] = "6eae1360658302b9b512fa46b4d06f5b818dfce5f2f43d7d710ca8142719d8ad" |
14 | 15 | ||
15 | S = "${WORKDIR}/${REALPN}-${PV}" | 16 | S = "${WORKDIR}/${REALPN}-${PV}" |
16 | DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad" | 17 | DEPENDS = "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 | ||
42 | PACKAGECONFIG[drm] = "-Dwith_drm=yes,-Dwith_drm=no,udev libdrm" | 43 | PACKAGECONFIG[drm] = "-Ddrm=enabled,-Ddrm=disabled,udev libdrm" |
43 | PACKAGECONFIG[egl] = "-Dwith_egl=yes,-Dwith_egl=no,virtual/egl" | 44 | PACKAGECONFIG[egl] = "-Degl=enabled,-Degl=disabled,virtual/egl" |
44 | PACKAGECONFIG[encoders] = "-Dwith_encoders=yes,-Dwith_encoders=no" | 45 | PACKAGECONFIG[encoders] = "-Dencoders=enabled,-Dencoders=disabled" |
45 | PACKAGECONFIG[glx] = "-Dwith_glx=yes,-Dwith_glx=no,virtual/libgl" | 46 | PACKAGECONFIG[glx] = "-Dglx=enabled,-Dglx=disabled,virtual/libgl" |
46 | PACKAGECONFIG[wayland] = "-Dwith_wayland=yes,-Dwith_wayland=no,wayland-native wayland wayland-protocols" | 47 | PACKAGECONFIG[wayland] = "-Dwayland=enabled,-Dwayland=disabled,wayland-native wayland wayland-protocols" |
47 | PACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxrandr libxrender" | 48 | PACKAGECONFIG[x11] = "-Dx11=enabled,-Dx11=disabled,virtual/libx11 libxrandr libxrender" |
48 | 49 | ||
49 | FILES_${PN} += "${libdir}/gstreamer-*/*.so" | 50 | FILES:${PN} += "${libdir}/gstreamer-*/*.so" |
50 | FILES_${PN}-dbg += "${libdir}/gstreamer-*/.debug" | 51 | FILES:${PN}-dbg += "${libdir}/gstreamer-*/.debug" |
51 | FILES_${PN}-dev += "${libdir}/gstreamer-*/*.a" | 52 | FILES:${PN}-dev += "${libdir}/gstreamer-*/*.a" |
52 | FILES_${PN}-tests = "${bindir}/*" | 53 | FILES:${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 @@ | |||
1 | From fd8f49dba8c09d47425da80f5faab3bfa4a7c962 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jose Quaresma <quaresma.jose@gmail.com> | ||
3 | Date: Sat, 10 Oct 2020 19:09:03 +0000 | ||
4 | Subject: [PATCH 1/3] gstpluginloader: when env var is set do not fall through | ||
5 | to system plugin scanner | ||
6 | |||
7 | If we set a custom GST_PLUGIN_SCANNER env var, then we probably want to use that and only that. | ||
8 | |||
9 | Falling through to the one installed on the system is problamatic in cross-compilation | ||
10 | environemnts, regardless of whether one pointed to by the env var succeeded or failed. | ||
11 | |||
12 | taken from: | ||
13 | http://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 | |||
15 | Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/669] | ||
16 | Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com> | ||
17 | --- | ||
18 | gst/gstpluginloader.c | 15 +++++++-------- | ||
19 | 1 file changed, 7 insertions(+), 8 deletions(-) | ||
20 | |||
21 | diff --git a/gst/gstpluginloader.c b/gst/gstpluginloader.c | ||
22 | index 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 | -- | ||
65 | 2.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 @@ | |||
1 | From 5372cd5bf2a9dd247b9c5fc6e4fe248046dbb085 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jose Quaresma <quaresma.jose@gmail.com> | ||
3 | Date: Sun, 11 Apr 2021 19:48:13 +0100 | ||
4 | Subject: [PATCH] tests: respect the idententaion used in meson | ||
5 | |||
6 | Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] | ||
7 | |||
8 | Signed-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 | |||
14 | diff --git a/tests/check/meson.build b/tests/check/meson.build | ||
15 | index 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 @@ | |||
1 | From 1db36347d05d88835519368442e9aa89c64091ad Mon Sep 17 00:00:00 2001 | ||
2 | From: Seungha Yang <seungha@centricular.com> | ||
3 | Date: Tue, 15 Sep 2020 00:54:58 +0900 | ||
4 | Subject: [PATCH] tests: seek: Don't use too strict timeout for validation | ||
5 | |||
6 | Expected segment-done message might not be seen within expected | ||
7 | time if system is not powerful enough. | ||
8 | |||
9 | Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/625> | ||
10 | |||
11 | Upstream-Status: Backport [https://cgit.freedesktop.org/gstreamer/gstreamer/commit?id=f44312ae5d831438fcf8041162079c65321c588c] | ||
12 | Signed-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 | |||
17 | diff --git a/tests/check/pipelines/seek.c b/tests/check/pipelines/seek.c | ||
18 | index 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 | -- | ||
31 | 2.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 @@ | |||
1 | From 598d108e2c438d8f2ecd3bf948fa3ebbd3681490 Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= <tim@centricular.com> | ||
3 | Date: Fri, 14 Aug 2020 16:38:26 +0100 | ||
4 | Subject: [PATCH 2/3] Remove unused valgrind detection | ||
5 | |||
6 | Having this just to log a debug message in case we're | ||
7 | running inside valgrind doesn't seem very useful, and | ||
8 | the code that used to use this no longer exists it seems. | ||
9 | |||
10 | Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/595> | ||
11 | |||
12 | Upstream-Status: Backport [a2cbf75523cdf8a4df1baa7007d86ef455972245] | ||
13 | |||
14 | Signed-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 | |||
21 | diff --git a/gst/gst_private.h b/gst/gst_private.h | ||
22 | index 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); | ||
34 | diff --git a/gst/gstinfo.c b/gst/gstinfo.c | ||
35 | index 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, | ||
98 | diff --git a/meson.build b/meson.build | ||
99 | index 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 | -- | ||
111 | 2.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 @@ | |||
1 | From 27e977d03b0f7c1d0bf19621ef0cec0585410e7b Mon Sep 17 00:00:00 2001 | ||
2 | From: Jose Quaresma <quaresma.jose@gmail.com> | ||
3 | Date: Sun, 11 Apr 2021 19:48:13 +0100 | ||
4 | Subject: [PATCH] tests: add support for install the tests | ||
5 | |||
6 | This will provide to run the tests using the gnome-desktop-testing [1] | ||
7 | |||
8 | [1] https://wiki.gnome.org/Initiatives/GnomeGoals/InstalledTests | ||
9 | |||
10 | Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] | ||
11 | |||
12 | Signed-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 | |||
22 | diff --git a/meson.build b/meson.build | ||
23 | index 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') | ||
37 | diff --git a/meson_options.txt b/meson_options.txt | ||
38 | index 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') | ||
49 | diff --git a/tests/check/meson.build b/tests/check/meson.build | ||
50 | index 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 | ||
99 | diff --git a/tests/check/template.test.in b/tests/check/template.test.in | ||
100 | new file mode 100644 | ||
101 | index 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 @@ | |||
1 | From cf8077a7e3ab0ae236ebde79b7fc0b02eac658de Mon Sep 17 00:00:00 2001 | ||
2 | From: Carlos Rafael Giani <crg7475@mailbox.org> | ||
3 | Date: Fri, 25 Oct 2019 00:06:26 +0200 | ||
4 | Subject: [PATCH 3/3] meson: Add option for installed tests | ||
5 | |||
6 | This adds an option for producing installed versions of the unit tests. | ||
7 | These versions don't need meson to run (only a small shell script). This | ||
8 | makes it easier to run cross compiled tests on a target machine. | ||
9 | |||
10 | Upstream-Status: Pending | ||
11 | |||
12 | Signed-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 | |||
24 | diff --git a/build-aux/gen-installed-test-desc.py b/build-aux/gen-installed-test-desc.py | ||
25 | new file mode 100644 | ||
26 | index 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)) | ||
48 | diff --git a/build-aux/gen-installed-test-shscript.py b/build-aux/gen-installed-test-shscript.py | ||
49 | new file mode 100644 | ||
50 | index 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) | ||
79 | diff --git a/meson_options.txt b/meson_options.txt | ||
80 | index 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') | ||
92 | diff --git a/tests/check/meson.build b/tests/check/meson.build | ||
93 | index 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', '') | ||
169 | diff --git a/tests/files/testfile b/tests/files/testfile | ||
170 | new file mode 100644 | ||
171 | index 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 | -- | ||
256 | 2.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 @@ | |||
1 | From 7041bc5adf9501beb1428d8bbae6b351a6bf07f9 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jose Quaresma <quaresma.jose@gmail.com> | ||
3 | Date: Sat, 24 Apr 2021 10:34:47 +0100 | ||
4 | Subject: [PATCH] tests: use a dictionaries for environment | ||
5 | |||
6 | meson environment() can't be passed to configure_file and it is needed for installed_tests, | ||
7 | use a dictionary as this is simplest solution to install the environment. | ||
8 | |||
9 | Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] | ||
10 | |||
11 | Signed-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 | |||
17 | diff --git a/tests/check/meson.build b/tests/check/meson.build | ||
18 | index 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 @@ | |||
1 | From 1b1d1ce4227b6bea7c7def5dac4a663486e070c2 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jose Quaresma <quaresma.jose@gmail.com> | ||
3 | Date: Sun, 2 May 2021 01:58:01 +0100 | ||
4 | Subject: [PATCH] tests: add helper script to run the installed_tests | ||
5 | |||
6 | - this is a bash script that will run the installed_tests | ||
7 | with some of the environment variables used in the meson | ||
8 | testing framework. | ||
9 | |||
10 | Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] | ||
11 | |||
12 | Signed-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 | |||
21 | diff --git a/tests/check/meson.build b/tests/check/meson.build | ||
22 | index 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) | ||
49 | diff --git a/tests/check/template.sh.in b/tests/check/template.sh.in | ||
50 | new file mode 100755 | ||
51 | index 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@ | ||
64 | diff --git a/tests/check/template.test.in b/tests/check/template.test.in | ||
65 | index 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. | ||
5 | export CK_TIMEOUT_MULTIPLIER=5 | ||
6 | |||
7 | # Skip some tests that we know are problematic | ||
8 | export GST_CHECKS_IGNORE="" | ||
9 | # gstnetclientclock.c:test_functioning is very sensitive to load | ||
10 | GST_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 | ||
14 | GST_CHECKS_IGNORE="$GST_CHECKS_IGNORE,test_infinite_seek_50_src_live" | ||
15 | |||
16 | gnome-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. | |||
4 | HOMEPAGE = "http://gstreamer.freedesktop.org/" | 4 | HOMEPAGE = "http://gstreamer.freedesktop.org/" |
5 | BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer" | 5 | BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer" |
6 | SECTION = "multimedia" | 6 | SECTION = "multimedia" |
7 | LICENSE = "LGPLv2+" | 7 | LICENSE = "LGPL-2.1-or-later" |
8 | 8 | ||
9 | DEPENDS = "glib-2.0 glib-2.0-native libxml2 bison-native flex-native" | 9 | DEPENDS = "glib-2.0 glib-2.0-native libxml2 bison-native flex-native" |
10 | 10 | ||
11 | inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection | 11 | inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection ptest-gnome |
12 | 12 | ||
13 | LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \ | 13 | LIC_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 | ||
16 | S = "${WORKDIR}/gstreamer-${PV}" | 16 | S = "${WORKDIR}/gstreamer-${PV}" |
17 | 17 | ||
18 | SRC_URI = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \ | 18 | SRC_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 | " |
24 | SRC_URI[sha256sum] = "0c2e09e18f2df69a99b5cb3bd53c597b3cc2e35cf6c98043bb86a66f3d312100" | 25 | SRC_URI[sha256sum] = "3d16259e9dab8b002c57ce208a09b350d8282f5b0197306c0cdba9a0d0799744" |
25 | 26 | ||
26 | PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \ | 27 | PACKAGECONFIG ??= "${@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 | ||
31 | PACKAGECONFIG[debug] = "-Dgst_debug=true,-Dgst_debug=false" | 32 | PACKAGECONFIG[debug] = "-Dgst_debug=true,-Dgst_debug=false" |
32 | PACKAGECONFIG[tracer-hooks] = "-Dtracer_hooks=true,-Dtracer_hooks=false" | 33 | PACKAGECONFIG[tracer-hooks] = "-Dtracer_hooks=true,-Dtracer_hooks=false" |
34 | PACKAGECONFIG[coretracers] = "-Dcoretracers=enabled,-Dcoretracers=disabled" | ||
33 | PACKAGECONFIG[check] = "-Dcheck=enabled,-Dcheck=disabled" | 35 | PACKAGECONFIG[check] = "-Dcheck=enabled,-Dcheck=disabled" |
34 | PACKAGECONFIG[tests] = "-Dtests=enabled -Dinstalled-tests=true,-Dtests=disabled -Dinstalled-tests=false" | 36 | PACKAGECONFIG[tests] = "-Dtests=enabled -Dinstalled_tests=true,-Dtests=disabled -Dinstalled_tests=false" |
35 | PACKAGECONFIG[unwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind" | 37 | PACKAGECONFIG[unwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind" |
36 | PACKAGECONFIG[dw] = "-Dlibdw=enabled,-Dlibdw=disabled,elfutils" | 38 | PACKAGECONFIG[dw] = "-Dlibdw=enabled,-Dlibdw=disabled,elfutils" |
37 | PACKAGECONFIG[bash-completion] = "-Dbash-completion=enabled,-Dbash-completion=disabled,bash-completion" | 39 | PACKAGECONFIG[bash-completion] = "-Dbash-completion=enabled,-Dbash-completion=disabled,bash-completion" |
@@ -60,11 +62,13 @@ GIR_MESON_DISABLE_FLAG = "disabled" | |||
60 | PACKAGES += "${PN}-bash-completion" | 62 | PACKAGES += "${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 |
63 | FILES_${PN} += "${libdir}/gstreamer-1.0/*.so" | 65 | FILES:${PN} += "${libdir}/gstreamer-1.0/*.so" |
64 | FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.a ${libdir}/gstreamer-1.0/include" | 66 | FILES:${PN}-dev += "${libdir}/gstreamer-1.0/*.a ${libdir}/gstreamer-1.0/include" |
65 | FILES_${PN}-bash-completion += "${datadir}/bash-completion/completions/ ${datadir}/bash-completion/helpers/gst*" | 67 | FILES:${PN}-bash-completion += "${datadir}/bash-completion/completions/ ${datadir}/bash-completion/helpers/gst*" |
66 | FILES_${PN}-dbg += "${datadir}/gdb ${datadir}/gstreamer-1.0/gdb" | 68 | FILES:${PN}-dbg += "${datadir}/gdb ${datadir}/gstreamer-1.0/gdb" |
69 | |||
70 | RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-gconv-iso8859-5" | ||
67 | 71 | ||
68 | CVE_PRODUCT = "gstreamer" | 72 | CVE_PRODUCT = "gstreamer" |
69 | 73 | ||
70 | require gstreamer1.0-ptest.inc | 74 | PTEST_BUILD_HOST_FILES = "" |