summaryrefslogtreecommitdiffstats
path: root/recipes-multimedia/gstreamer
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-multimedia/gstreamer')
-rw-r--r--recipes-multimedia/gstreamer/gst-devtools_1.22.5.imx.bb52
-rw-r--r--recipes-multimedia/gstreamer/gst-examples/0001-Make-player-examples-installable.patch37
-rw-r--r--recipes-multimedia/gstreamer/gst-examples/gst-player.desktop10
-rw-r--r--recipes-multimedia/gstreamer/gst-examples_1.24.7.imx.bb38
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-libav_1.24.7.imx.bb34
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-omx_%.bbappend1
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch33
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.24.7.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.22.5.imx.bb)22
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstallocator-Fix-typcasts.patch47
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.7.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.22.5.imx.bb)8
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.7.imx.bbappend (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.22.%.bbappend)4
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.24.7.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.22.5.imx.bb)16
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb4
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.24.0.imx.bb48
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-python/0001-meson.build-Fix-missing-python_opt.patch47
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-python_1.24.0.imx.bb37
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.24.0.imx.bb38
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.24.0.imx.bb57
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch34
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch107
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch50
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch74
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-remove-gstbin-test_watch_for_state_change-test.patch107
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0_1.24.7.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0_1.22.5.imx.bb)15
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin/0001-aiurdemux-Fix-type-of-USER_DATA_LOCATION.patch33
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin/0002-aiurdemux.h-Include-glib-gprintf.h-for-g_printf-prot.patch28
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin/0003-grecorder-Fix-build-with-clang.patch44
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin/0004-gstimxcommon-Return-0-instead-of-NULL-for-a-function.patch87
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin/0005-aiurstreamcache-Include-gst-gstinfo.h.patch28
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin/0006-Fix-typecast-warnings-found-with-clang.patch61
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin/0007-gstimxv4l2-Fix-typecasting-errors.patch30
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin/0008-beepdec-Declare-beep_register_external_typefinders.patch32
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin/0009-gstimxv4l2.c-Fix-incompatible-integer-to-pointer-con.patch41
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin/0010-provide-declaration-for-aiur_register_external_typef.patch28
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin/0011-meson-Undef-_TIME_BITS-along-with-_FILE_OFFSET_BITS.patch34
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb32
36 files changed, 441 insertions, 957 deletions
diff --git a/recipes-multimedia/gstreamer/gst-devtools_1.22.5.imx.bb b/recipes-multimedia/gstreamer/gst-devtools_1.22.5.imx.bb
new file mode 100644
index 000000000..9f7f890d5
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gst-devtools_1.22.5.imx.bb
@@ -0,0 +1,52 @@
1SUMMARY = "Gstreamer validation tool"
2DESCRIPTION = "A Tool to test GStreamer components"
3HOMEPAGE = "https://gstreamer.freedesktop.org/documentation/gst-devtools/index.html"
4SECTION = "multimedia"
5
6LICENSE = "LGPL-2.1-or-later"
7LIC_FILES_CHKSUM = "file://validate/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343"
8
9S = "${WORKDIR}/gst-devtools-1.22.5"
10
11SRC_URI = "https://gstreamer.freedesktop.org/src/gst-devtools/gst-devtools-1.22.5.tar.xz \
12 file://0001-connect-has-a-different-signature-on-musl.patch \
13 "
14
15SRC_URI[sha256sum] = "2add1519aa6eeb01d544cb94293688ee3bc2079f6bca6075bf5c23d00a0921be"
16
17DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base"
18RRECOMMENDS:${PN} = "git"
19
20FILES:${PN} += "${datadir}/gstreamer-1.0/* ${libdir}/gst-validate-launcher/* ${libdir}/gstreamer-1.0/*"
21
22inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection
23
24# TODO: put this in a gettext.bbclass patch
25def gettext_oemeson(d):
26 if d.getVar('USE_NLS') == 'no':
27 return '-Dnls=disabled'
28 # Remove the NLS bits if USE_NLS is no or INHIBIT_DEFAULT_DEPS is set
29 if d.getVar('INHIBIT_DEFAULT_DEPS') and not oe.utils.inherits(d, 'cross-canadian'):
30 return '-Dnls=disabled'
31 return '-Dnls=enabled'
32
33# Build GstValidateVideo
34PACKAGECONFIG[cairo] = "-Dcairo=enabled,-Dcairo=disabled,cairo"
35
36EXTRA_OEMESON += " \
37 -Ddoc=disabled \
38 -Ddebug_viewer=disabled \
39 -Dtests=disabled \
40 -Dvalidate=enabled \
41 ${@gettext_oemeson(d)} \
42"
43
44do_install:append () {
45 for fn in ${bindir}/gst-validate-launcher \
46 ${libdir}/gst-validate-launcher/python/launcher/config.py; do
47 sed -i -e 's,${B},/usr/src/debug/${PN},g' -e 's,${S},/usr/src/debug/${PN},g' ${D}$fn
48 done
49}
50
51GIR_MESON_ENABLE_FLAG = "enabled"
52GIR_MESON_DISABLE_FLAG = "disabled"
diff --git a/recipes-multimedia/gstreamer/gst-examples/0001-Make-player-examples-installable.patch b/recipes-multimedia/gstreamer/gst-examples/0001-Make-player-examples-installable.patch
new file mode 100644
index 000000000..828c87dc9
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gst-examples/0001-Make-player-examples-installable.patch
@@ -0,0 +1,37 @@
1From 7924016fce2d0b435891a335cdae52fc939c7e3b Mon Sep 17 00:00:00 2001
2From: Jussi Kukkonen <jussi.kukkonen@intel.com>
3Date: Thu, 17 Aug 2017 11:07:02 +0300
4Subject: [PATCH] Make player examples installable
5
6Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
7Upstream-Status: Denied [Upstream considers these code examples, for now a least]
8
9https://bugzilla.gnome.org/show_bug.cgi?id=777827
10
11---
12 playback/player/gst-play/meson.build | 1 +
13 playback/player/gtk/meson.build | 1 +
14 2 files changed, 2 insertions(+)
15
16Index: gst-examples/playback/player/gst-play/meson.build
17===================================================================
18--- gst-examples.orig/playback/player/gst-play/meson.build
19+++ gst-examples/playback/player/gst-play/meson.build
20@@ -2,5 +2,6 @@ executable('gst-play',
21 ['gst-play.c',
22 'gst-play-kb.c',
23 'gst-play-kb.h'],
24+ install: true,
25 dependencies : [gst_dep, dependency('gstreamer-play-1.0'), m_dep])
26
27Index: gst-examples/playback/player/gtk/meson.build
28===================================================================
29--- gst-examples.orig/playback/player/gtk/meson.build
30+++ gst-examples/playback/player/gtk/meson.build
31@@ -20,5 +20,6 @@ if gtk_dep.found()
32 'gtk-video-renderer.h',
33 'gtk-video-renderer.c'],
34 c_args : extra_c_args,
35+ install: true,
36 dependencies : [gst_dep, gsttag_dep, gstplay_dep, gtk_dep, x11_dep])
37 endif
diff --git a/recipes-multimedia/gstreamer/gst-examples/gst-player.desktop b/recipes-multimedia/gstreamer/gst-examples/gst-player.desktop
new file mode 100644
index 000000000..d165e5d91
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gst-examples/gst-player.desktop
@@ -0,0 +1,10 @@
1[Desktop Entry]
2Name=Media Player
3Comment=Basic media player
4Icon=video-player
5TryExec=gtk-play
6Exec=gtk-play
7StartupNotify=true
8Terminal=false
9Type=Application
10Categories=GTK;AudioVideo;
diff --git a/recipes-multimedia/gstreamer/gst-examples_1.24.7.imx.bb b/recipes-multimedia/gstreamer/gst-examples_1.24.7.imx.bb
new file mode 100644
index 000000000..9db0051a1
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gst-examples_1.24.7.imx.bb
@@ -0,0 +1,38 @@
1# This builds an older version which is compatible with the gstreamer NXP fork 1.24.7.imx,
2# thus the version is appended with '.imx'
3
4SUMMARY = "GStreamer examples (including gtk-play, gst-play)"
5DESCRIPTION = "GStreamer example applications."
6HOMEPAGE = "https://gitlab.freedesktop.org/gstreamer/gst-examples"
7BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-examples/-/issues"
8LICENSE = "LGPL-2.0-or-later"
9LIC_FILES_CHKSUM = "file://playback/player/gtk/gtk-play.c;beginline=1;endline=20;md5=f8c72dae3d36823ec716a9ebcae593b9"
10
11DEPENDS = "glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad gtk+3 json-glib glib-2.0-native"
12
13SRC_URI = "git://gitlab.freedesktop.org/gstreamer/gstreamer.git;protocol=https;branch=1.24 \
14 file://0001-Make-player-examples-installable.patch \
15 file://gst-player.desktop \
16 "
17
18SRCREV = "0f1e984e41ce8d6d0758265d35e8b10d5815fde2"
19
20S = "${UNPACKDIR}/${BP}/subprojects/gst-examples"
21
22inherit meson pkgconfig features_check
23
24UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)"
25
26ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
27
28do_install:append() {
29 install -m 0644 -D ${UNPACKDIR}/gst-player.desktop ${D}${datadir}/applications/gst-player.desktop
30}
31
32RDEPENDS:${PN} = "gstreamer1.0-plugins-base-playback"
33RRECOMMENDS:${PN} = "gstreamer1.0-plugins-base-meta \
34 gstreamer1.0-plugins-good-meta \
35 gstreamer1.0-plugins-bad-meta \
36 ${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "gstreamer1.0-libav", "", d)} \
37 ${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "gstreamer1.0-plugins-ugly-meta", "", d)}"
38RPROVIDES:${PN} += "gst-player gst-player-bin"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.24.7.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.24.7.imx.bb
new file mode 100644
index 000000000..bf61d4192
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.24.7.imx.bb
@@ -0,0 +1,34 @@
1SUMMARY = "Libav-based GStreamer 1.x plugin"
2DESCRIPTION = "Contains a GStreamer plugin for using the encoders, decoders, \
3muxers, and demuxers provided by FFmpeg."
4HOMEPAGE = "http://gstreamer.freedesktop.org/"
5SECTION = "multimedia"
6
7# ffmpeg has comercial license flags so add it as we need ffmpeg as a dependency
8LICENSE_FLAGS = "commercial"
9LICENSE = "LGPL-2.1-or-later"
10LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770 \
11 file://ext/libav/gstav.h;beginline=1;endline=18;md5=a752c35267d8276fd9ca3db6994fca9c \
12 "
13
14SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${@get_gst_ver('${PV}')}.tar.xz"
15SRC_URI[sha256sum] = "c3e4179ba183c2d3101edf87ff70dd07e728c766a5fee34e6ecded76ca5802df"
16
17S = "${UNPACKDIR}/gst-libav-${@get_gst_ver('${PV}')}"
18
19DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base ffmpeg"
20
21inherit meson pkgconfig upstream-version-is-even
22
23EXTRA_OEMESON += " \
24 -Dtests=disabled \
25"
26
27# Drop .imx from PV
28def get_gst_ver(v):
29 return oe.utils.trim_version(v, 3)
30
31FILES:${PN} += "${libdir}/gstreamer-1.0/*.so"
32FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
33
34COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-omx_%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-omx_%.bbappend
deleted file mode 100644
index 188476035..000000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-omx_%.bbappend
+++ /dev/null
@@ -1 +0,0 @@
1EXTRA_OEMESON:append:imx-nxp-bsp = " -Dtests=disabled -Dexamples=disabled"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch
deleted file mode 100644
index 029b80e17..000000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1From 3bc5d48257032b6bbee532aad15062fbbcc43bfe Mon Sep 17 00:00:00 2001
2From: Andrey Zhizhikin <andrey.z@gmail.com>
3Date: Mon, 27 Jan 2020 10:22:35 +0000
4Subject: [PATCH] opencv: resolve missing opencv data dir in yocto build
5
6When Yocto build is performed, opencv searches for data dir using simple
7'test' command, this fails because pkg-config provides an absolute
8path on the target which needs to be prepended by PKG_CONFIG_SYSROOT_DIR
9in order for the 'test' utility to pick up the absolute path.
10
11Upstream-Status: Inappropriate [OE-specific]
12
13Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
14Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
15
16---
17 ext/opencv/meson.build | 3 +++
18 1 file changed, 3 insertions(+)
19
20diff --git a/ext/opencv/meson.build b/ext/opencv/meson.build
21index 1d86b90..b5c8b95 100644
22--- a/ext/opencv/meson.build
23+++ b/ext/opencv/meson.build
24@@ -87,6 +87,9 @@ if opencv_found
25 opencv_prefix = opencv_dep.get_variable('prefix')
26 gstopencv_cargs += ['-DOPENCV_PREFIX="' + opencv_prefix + '"']
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+
31 # Check the data dir used by opencv for its xml data files
32 # Use prefix from pkg-config to be compatible with cross-compilation
33 r = run_command('test', '-d', opencv_prefix + '/share/opencv', check: false)
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.22.5.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.24.7.imx.bb
index 3366a6274..7aa22436c 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.22.5.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.24.7.imx.bb
@@ -178,19 +178,19 @@ FILES:${PN}-voamrwbenc += "${datadir}/gstreamer-1.0/presets/GstVoAmrwbEnc.prs"
178 178
179DEFAULT_PREFERENCE = "-1" 179DEFAULT_PREFERENCE = "-1"
180 180
181LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=4fbd65380cdd255951079008b364516c" 181LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=69333daa044cb77e486cc36129f7a770"
182
183DEPENDS:append:imxgpu2d = " virtual/libg2d"
184 182
185SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \ 183SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \
186 file://0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch \ 184 file://0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch \
187 file://0002-avoid-including-sys-poll.h-directly.patch" 185 file://0002-avoid-including-sys-poll.h-directly.patch \
186 file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \
187 "
188SRC_URI:prepend = "${GST1.0-PLUGINS-BAD_SRC};branch=${SRCBRANCH} " 188SRC_URI:prepend = "${GST1.0-PLUGINS-BAD_SRC};branch=${SRCBRANCH} "
189GST1.0-PLUGINS-BAD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-bad.git;protocol=https" 189GST1.0-PLUGINS-BAD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-bad.git;protocol=https"
190SRCBRANCH = "MM_04.08.03_2312_L6.6.y" 190SRCBRANCH = "MM_04.09.03_2412_L6.12.y"
191SRCREV = "9de821c50b4dd7af2407d9c3d078020704510a20" 191SRCREV = "7bb1254fcb0a0dcb1ecb4ac21efbc5068151943d"
192 192
193S = "${WORKDIR}/git" 193S = "${UNPACKDIR}/${BP}"
194 194
195inherit use-imx-headers 195inherit use-imx-headers
196 196
@@ -215,9 +215,9 @@ EXTRA_OEMESON += " \
215 -Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \ 215 -Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \
216" 216"
217 217
218COMPATIBLE_MACHINE = "(imx-nxp-bsp)" 218EXTRA_OEMESON:remove = " \
219 -Dkate=disabled \
220"
219 221
220# it uses nested functions sadly, in ext/wayland/gstwaylandsink.c for GST_ELEMENT_REGISTER_DEFINE 222COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
221#
222TOOLCHAIN = "gcc"
223########### End of i.MX overrides ######### 223########### End of i.MX overrides #########
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstallocator-Fix-typcasts.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstallocator-Fix-typcasts.patch
deleted file mode 100644
index 3ab4bab45..000000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstallocator-Fix-typcasts.patch
+++ /dev/null
@@ -1,47 +0,0 @@
1From 90b94ff95c72487054fd283fb7cb5ebd13822b3f Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 7 Aug 2023 18:56:05 -0700
4Subject: [PATCH] gstallocator: Fix typcasts
5
6These are found when building with clang+musl
7| ../git/gst-libs/gst/allocators/gstallocatorphymem.c:228:10: error: incompatible pointer to integer conversion returning 'gpointer' (aka 'void *') from a function with result type 'guintptr
8' (aka 'unsigned long') [-Wint-conversion]
9| 228 | return gst_phymem_get_phy (mem);
10| | ^~~~~~~~~~~~~~~~~~~~~~~~
11
12Upstream-Status: Submitted [https://github.com/nxp-imx/gst-plugins-base/pull/4]
13Signed-off-by: Khem Raj <raj.khem@gmail.com>
14---
15 gst-libs/gst/allocators/gstallocatorphymem.c | 2 +-
16 gst-libs/gst/gl/gstglphymemory.c | 2 +-
17 2 files changed, 2 insertions(+), 2 deletions(-)
18
19diff --git a/gst-libs/gst/allocators/gstallocatorphymem.c b/gst-libs/gst/allocators/gstallocatorphymem.c
20index f3c3306c7..f8a4511ab 100755
21--- a/gst-libs/gst/allocators/gstallocatorphymem.c
22+++ b/gst-libs/gst/allocators/gstallocatorphymem.c
23@@ -225,7 +225,7 @@ static guintptr
24 gst_allocator_phymem_get_phys_addr (GstPhysMemoryAllocator * allocator,
25 GstMemory * mem)
26 {
27- return gst_phymem_get_phy (mem);
28+ return (guintptr)gst_phymem_get_phy (mem);
29 }
30
31 static void
32diff --git a/gst-libs/gst/gl/gstglphymemory.c b/gst-libs/gst/gl/gstglphymemory.c
33index d82c9a66a..1d8be0a5d 100644
34--- a/gst-libs/gst/gl/gstglphymemory.c
35+++ b/gst-libs/gst/gl/gstglphymemory.c
36@@ -337,7 +337,7 @@ gst_gl_physical_memory_setup_buffer (GstAllocator * allocator,
37 GST_VIDEO_INFO_HEIGHT (info),
38 viv_fmt,
39 memblk->vaddr,
40- memblk->paddr,
41+ (guint)memblk->paddr,
42 FALSE
43 };
44
45--
462.41.0
47
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.22.5.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.7.imx.bb
index dd7869a9b..ed6e02435 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.22.5.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.7.imx.bb
@@ -116,12 +116,12 @@ SRC_URI:remove = " \
116 file://0003-viv-fb-Make-sure-config.h-is-included.patch \ 116 file://0003-viv-fb-Make-sure-config.h-is-included.patch \
117 file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch" 117 file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch"
118SRC_URI:prepend = "${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} " 118SRC_URI:prepend = "${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} "
119SRC_URI:append = " file://0001-gstallocator-Fix-typcasts.patch" 119
120GST1.0-PLUGINS-BASE_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-base.git;protocol=https" 120GST1.0-PLUGINS-BASE_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-base.git;protocol=https"
121SRCBRANCH = "MM_04.08.03_2312_L6.6.y" 121SRCBRANCH = "MM_04.09.03_2412_L6.12.y"
122SRCREV = "c4333767ea122c182ba4e14cababe8dbe2a1b882" 122SRCREV = "858ae5a1fb2bd2692ca7ebbd5bde2eee14e1842d"
123 123
124S = "${WORKDIR}/git" 124S = "${UNPACKDIR}/${BP}"
125 125
126inherit use-imx-headers 126inherit use-imx-headers
127 127
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.22.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.7.imx.bbappend
index ca6636b83..528d7e1a3 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.22.%.bbappend
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.7.imx.bbappend
@@ -13,5 +13,5 @@ PACKAGECONFIG_GL:use-mainline-bsp = \
13# does not depend on the viv-fb feature. It used to, but that was actually a bug 13# does not depend on the viv-fb feature. It used to, but that was actually a bug
14# which was fixed in GStreamer 1.22.5. Since then, the direct texture support is 14# which was fixed in GStreamer 1.22.5. Since then, the direct texture support is
15# detected by Meson by checking for direct texture symbols like "glTexDirectVIV".) 15# detected by Meson by checking for direct texture symbols like "glTexDirectVIV".)
16PACKAGECONFIG_GL:append:mx6-nxp-bsp = " viv-fb " 16PACKAGECONFIG_GL:imxgpu2d:append:mx6-nxp-bsp = " viv-fb"
17PACKAGECONFIG_GL:append:mx7ulp-nxp-bsp = " viv-fb " 17PACKAGECONFIG_GL:imxgpu2d:append:mx7-nxp-bsp = " viv-fb"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.22.5.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.24.7.imx.bb
index 9e09ef930..28044ccd1 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.22.5.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.24.7.imx.bb
@@ -94,11 +94,11 @@ FILES:${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs"
94DEFAULT_PREFERENCE = "-1" 94DEFAULT_PREFERENCE = "-1"
95 95
96LIC_FILES_CHKSUM = " \ 96LIC_FILES_CHKSUM = " \
97 file://LICENSE.txt;md5=a6f89e2100d9b6cdffcea4f398e37343 \ 97 file://LICENSE.txt;md5=69333daa044cb77e486cc36129f7a770 \
98 file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe \ 98 file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe \
99" 99"
100# Enable pulsesink in gstreamer 100# Enable pulsesink in gstreamer
101PACKAGECONFIG:append = "${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)}" 101PACKAGECONFIG:append = "${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', ' pulseaudio', '', d)}"
102 102
103# fb implementation of v4l2 uses libdrm 103# fb implementation of v4l2 uses libdrm
104DEPENDS += "${@bb.utils.contains('PACKAGECONFIG', 'v4l2', '${DEPENDS_V4L2}', '', d)}" 104DEPENDS += "${@bb.utils.contains('PACKAGECONFIG', 'v4l2', '${DEPENDS_V4L2}', '', d)}"
@@ -111,16 +111,10 @@ SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plu
111 111
112SRC_URI:prepend = "${GST1.0-PLUGINS-GOOD_SRC};branch=${SRCBRANCH} " 112SRC_URI:prepend = "${GST1.0-PLUGINS-GOOD_SRC};branch=${SRCBRANCH} "
113GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-good.git;protocol=https" 113GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-good.git;protocol=https"
114SRCBRANCH = "MM_04.08.03_2312_L6.6.y" 114SRCBRANCH = "MM_04.09.03_2412_L6.12.y"
115SRCREV = "d361360510c97dc23abbfcdd22dff8214890527d" 115SRCREV = "626a972e9ef448f1017cfad07a3486a0fb340a0d"
116 116
117# set 32bit compile timer for 32-bit platform 117S = "${UNPACKDIR}/${BP}"
118GLIBC_64BIT_TIME_FLAGS:mx6-nxp-bsp = ""
119GLIBC_64BIT_TIME_FLAGS:mx7-nxp-bsp = ""
120INSANE_SKIP:mx6-nxp-bsp:append = " 32bit-time"
121INSANE_SKIP:mx7-nxp-bsp:append = " 32bit-time"
122
123S = "${WORKDIR}/git"
124 118
125COMPATIBLE_MACHINE = "(imx-nxp-bsp)" 119COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
126 120
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb
index 5bf60e623..cc2cedfd5 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb
@@ -15,11 +15,9 @@ RDEPENDS:gstreamer1.0-plugins-imx-imxvpu = "gstreamer1.0-plugins-bad-videoparser
15PV .= "+git${SRCPV}" 15PV .= "+git${SRCPV}"
16 16
17SRCBRANCH ?= "master" 17SRCBRANCH ?= "master"
18SRCREV = "cb3cd45676e808b222ac573e8a118f44fd70c288" 18SRCREV = "ce4f86e60f12c56574f727f3317fa8aa30a11387"
19SRC_URI = "git://github.com/Freescale/gstreamer-imx.git;branch=${SRCBRANCH};protocol=https" 19SRC_URI = "git://github.com/Freescale/gstreamer-imx.git;branch=${SRCBRANCH};protocol=https"
20 20
21S = "${WORKDIR}/git"
22
23inherit pkgconfig meson use-imx-headers 21inherit pkgconfig meson use-imx-headers
24 22
25# libg2d on i.MX8 SoCs with a DPU is emulated via the DPU. 23# libg2d on i.MX8 SoCs with a DPU is emulated via the DPU.
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.24.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.24.0.imx.bb
new file mode 100644
index 000000000..23b8c72cb
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.24.0.imx.bb
@@ -0,0 +1,48 @@
1require gstreamer1.0-plugins-common.inc
2require gstreamer1.0-plugins-license.inc
3
4SUMMARY = "'Ugly GStreamer plugins"
5HOMEPAGE = "https://gstreamer.freedesktop.org/"
6BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-ugly/-/issues"
7
8LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
9 "
10
11LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
12LICENSE_FLAGS = "commercial"
13
14SRC_URI = " \
15 https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${@get_gst_ver("${PV}")}.tar.xz \
16 "
17SRC_URI[sha256sum] = "c5d1cbdf71ab0c675bca236f70edfa1feb3f813fd4bfff563308f466d8805ca5"
18
19S = "${UNPACKDIR}/gst-plugins-ugly-${@get_gst_ver("${PV}")}"
20
21DEPENDS += "gstreamer1.0-plugins-base"
22
23GST_PLUGIN_SET_HAS_EXAMPLES = "0"
24
25PACKAGECONFIG ??= " \
26 ${GSTREAMER_ORC} \
27"
28
29PACKAGECONFIG[a52dec] = "-Da52dec=enabled,-Da52dec=disabled,liba52"
30PACKAGECONFIG[cdio] = "-Dcdio=enabled,-Dcdio=disabled,libcdio"
31PACKAGECONFIG[dvdread] = "-Ddvdread=enabled,-Ddvdread=disabled,libdvdread"
32PACKAGECONFIG[mpeg2dec] = "-Dmpeg2dec=enabled,-Dmpeg2dec=disabled,mpeg2dec"
33PACKAGECONFIG[x264] = "-Dx264=enabled,-Dx264=disabled,x264"
34
35GSTREAMER_GPL = "${@bb.utils.filter('PACKAGECONFIG', 'a52dec cdio dvdread mpeg2dec x264', d)}"
36
37EXTRA_OEMESON += " \
38 -Ddoc=disabled \
39 -Dsidplay=disabled \
40"
41
42# Drop .imx from PV
43def get_gst_ver(v):
44 return oe.utils.trim_version(v, 3)
45
46FILES:${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs"
47
48COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-python/0001-meson.build-Fix-missing-python_opt.patch b/recipes-multimedia/gstreamer/gstreamer1.0-python/0001-meson.build-Fix-missing-python_opt.patch
new file mode 100644
index 000000000..fd6b1c16e
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-python/0001-meson.build-Fix-missing-python_opt.patch
@@ -0,0 +1,47 @@
1From 8d7e2eaed10e2928358805f613223a6a149790d6 Mon Sep 17 00:00:00 2001
2From: Hiago De Franco <hiago.franco@toradex.com>
3Date: Wed, 31 Jul 2024 11:51:06 -0300
4Subject: [PATCH] meson.build: Fix missing python_opt
5
6'python_opt' was not declared earlier, giving the following build error:
7
8| Message: python_abi_flags =
9|
10| ../gst-python-1.24.0/meson.build:84:16: ERROR: Unknown variable "python_opt".
11
12Remove it and keep the error message.
13
14Upstream-Status: Inappropriate [oe specific]
15
16The patch already exists upstream, but this is related to another fix [1]
17not suitable for OE. Moreover, the backport does not apply since
18the patch was added to the gstreamer monorepo.
19
20[1] https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6734?
21
22Signed-off-by: Hiago De Franco <hiago.franco@toradex.com>
23---
24 meson.build | 7 +------
25 1 file changed, 1 insertion(+), 6 deletions(-)
26
27diff --git a/meson.build b/meson.build
28index f240b6fd8aca..53f7a43702c7 100644
29--- a/meson.build
30+++ b/meson.build
31@@ -80,12 +80,7 @@ foreach loc: pylib_locs
32 endforeach
33 endforeach
34 if pylib_fname == ''
35- error_msg = 'Could not find python library to load'
36- if python_opt.enabled()
37- error(error_msg)
38- else
39- message(error_msg)
40- endif
41+ message('Could not find python library to load')
42 endif
43
44 pygi_override_dir = get_option('pygi-overrides-dir')
45--
462.39.2
47
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-python_1.24.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-python_1.24.0.imx.bb
new file mode 100644
index 000000000..cac54e88a
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-python_1.24.0.imx.bb
@@ -0,0 +1,37 @@
1SUMMARY = "Python bindings for GStreamer 1.0"
2DESCRIPTION = "GStreamer Python binding overrides (complementing the bindings \
3provided by python-gi) "
4HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-python/"
5SECTION = "multimedia"
6
7LICENSE = "LGPL-2.1-or-later"
8LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740"
9
10SRC_URI = "\
11 https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${@get_gst_ver("${PV}")}.tar.xz \
12 file://0001-meson.build-Fix-missing-python_opt.patch \
13 "
14SRC_URI[sha256sum] = "041c2255c1ea9936c777dcb08a36ecaa6a24a69a12fc46ef53f1530d46c59f9d"
15
16DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
17RDEPENDS:${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
18
19PNREAL = "gst-python"
20
21S = "${UNPACKDIR}/${PNREAL}-${@get_gst_ver('${PV}')}"
22
23EXTRA_OEMESON += "\
24 -Dtests=disabled \
25 -Dplugin=enabled \
26 -Dlibpython-dir=${libdir} \
27"
28
29inherit meson pkgconfig setuptools3-base upstream-version-is-even features_check
30
31# Drop .imx from PV
32def get_gst_ver(v):
33 return oe.utils.trim_version(v, 3)
34
35FILES:${PN} += "${libdir}/gstreamer-1.0"
36
37REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.24.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.24.0.imx.bb
new file mode 100644
index 000000000..58255b992
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.24.0.imx.bb
@@ -0,0 +1,38 @@
1SUMMARY = "A library on top of GStreamer for building an RTSP server"
2HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-rtsp-server/"
3SECTION = "multimedia"
4LICENSE = "LGPL-2.1-or-later"
5LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770"
6
7DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base"
8
9PNREAL = "gst-rtsp-server"
10
11SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${@get_gst_ver("${PV}")}.tar.xz"
12
13SRC_URI[sha256sum] = "5b0fa6b12ba95b1d336a4b274cbe19e982aa3e6819f1d97bfd8e0102b103ed9b"
14
15S = "${UNPACKDIR}/${PNREAL}-${@get_gst_ver("${PV}")}"
16
17inherit meson pkgconfig upstream-version-is-even gobject-introspection
18
19EXTRA_OEMESON += " \
20 -Ddoc=disabled \
21 -Dexamples=disabled \
22 -Dtests=disabled \
23"
24
25GIR_MESON_ENABLE_FLAG = "enabled"
26GIR_MESON_DISABLE_FLAG = "disabled"
27
28# Drop .imx from PV
29def get_gst_ver(v):
30 return oe.utils.trim_version(v, 3)
31
32# Starting with 1.8.0 gst-rtsp-server includes dependency-less plugins as well
33require gstreamer1.0-plugins-packaging.inc
34
35CVE_PRODUCT += "gst-rtsp-server"
36
37COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
38
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.24.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.24.0.imx.bb
new file mode 100644
index 000000000..3993730ec
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.24.0.imx.bb
@@ -0,0 +1,57 @@
1SUMMARY = "VA-API support to GStreamer"
2HOMEPAGE = "https://gstreamer.freedesktop.org/"
3DESCRIPTION = "gstreamer-vaapi consists of a collection of VA-API \
4based plugins for GStreamer and helper libraries: `vaapidecode', \
5`vaapiconvert', and `vaapisink'."
6
7REALPN = "gstreamer-vaapi"
8
9LICENSE = "LGPL-2.1-or-later"
10LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
11
12SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-1.24.0.tar.xz"
13
14SRC_URI[sha256sum] = "6b1f3b91ca65dedc67dc67a25dc1d1e464f11825a27ab9c7ac7c1bda67f03596"
15
16S = "${UNPACKDIR}/${REALPN}-${@get_gst_ver('${PV}')}"
17DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
18
19inherit meson pkgconfig features_check upstream-version-is-even
20
21# Drop .imx from PV
22def get_gst_ver(v):
23 return oe.utils.trim_version(v, 3)
24
25REQUIRED_DISTRO_FEATURES ?= "opengl"
26
27EXTRA_OEMESON += " \
28 -Ddoc=disabled \
29 -Dexamples=disabled \
30 -Dtests=enabled \
31"
32
33PACKAGES =+ "${PN}-tests"
34
35# OpenGL packageconfig factored out to make it easy for distros
36# and BSP layers to pick either glx, egl, or no GL. By default,
37# try detecting X11 first, and if found (with OpenGL), use GLX,
38# otherwise try to check if EGL can be used.
39PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'glx', \
40 bb.utils.contains('DISTRO_FEATURES', 'opengl', 'egl', \
41 '', d), d)}"
42
43PACKAGECONFIG ??= "drm encoders \
44 ${PACKAGECONFIG_GL} \
45 ${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}"
46
47PACKAGECONFIG[drm] = "-Ddrm=enabled,-Ddrm=disabled,udev libdrm"
48PACKAGECONFIG[egl] = "-Degl=enabled,-Degl=disabled,virtual/egl"
49PACKAGECONFIG[encoders] = "-Dencoders=enabled,-Dencoders=disabled"
50PACKAGECONFIG[glx] = "-Dglx=enabled,-Dglx=disabled,virtual/libgl"
51PACKAGECONFIG[wayland] = "-Dwayland=enabled,-Dwayland=disabled,wayland-native wayland wayland-protocols"
52PACKAGECONFIG[x11] = "-Dx11=enabled,-Dx11=disabled,virtual/libx11 libxrandr libxrender"
53
54FILES:${PN} += "${libdir}/gstreamer-*/*.so"
55FILES:${PN}-dbg += "${libdir}/gstreamer-*/.debug"
56FILES:${PN}-dev += "${libdir}/gstreamer-*/*.a"
57FILES:${PN}-tests = "${bindir}/*"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch
deleted file mode 100644
index 1b9278db0..000000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch
+++ /dev/null
@@ -1,34 +0,0 @@
1From 559e1dd850b2b9eb3a415aa43e932e5e48f605cd Mon Sep 17 00:00:00 2001
2From: Jose Quaresma <quaresma.jose@gmail.com>
3Date: Sun, 11 Apr 2021 19:48:13 +0100
4Subject: [PATCH] tests: respect the idententaion used in meson
5
6Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789]
7
8Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
9
10---
11 tests/check/meson.build | 10 +++++-----
12 1 file changed, 5 insertions(+), 5 deletions(-)
13
14diff --git a/tests/check/meson.build b/tests/check/meson.build
15index 9787b0a..16caac7 100644
16--- a/tests/check/meson.build
17+++ b/tests/check/meson.build
18@@ -145,11 +145,11 @@ foreach t : core_tests
19
20 if not skip_test
21 exe = executable(test_name, fname,
22- c_args : gst_c_args + test_defines,
23- cpp_args : gst_c_args + test_defines,
24- include_directories : [configinc],
25- link_with : link_with_libs,
26- dependencies : gst_deps + test_deps,
27+ c_args : gst_c_args + test_defines,
28+ cpp_args : gst_c_args + test_defines,
29+ include_directories : [configinc],
30+ link_with : link_with_libs,
31+ dependencies : gst_deps + test_deps,
32 )
33
34 env = environment()
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch
deleted file mode 100644
index 568e38cbf..000000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch
+++ /dev/null
@@ -1,107 +0,0 @@
1From 08b1aaff972a7f6349373fc1ad4cc23081adb52c Mon Sep 17 00:00:00 2001
2From: Jose Quaresma <quaresma.jose@gmail.com>
3Date: Sun, 11 Apr 2021 19:48:13 +0100
4Subject: [PATCH] tests: add support for install the tests
5
6This will provide to run the tests using the gnome-desktop-testing [1]
7
8[1] https://wiki.gnome.org/Initiatives/GnomeGoals/InstalledTests
9
10Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789]
11
12Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
13
14---
15 meson.build | 4 ++++
16 meson_options.txt | 1 +
17 tests/check/meson.build | 22 +++++++++++++++++++++-
18 tests/check/template.test.in | 3 +++
19 4 files changed, 29 insertions(+), 1 deletion(-)
20 create mode 100644 tests/check/template.test.in
21
22diff --git a/meson.build b/meson.build
23index f9f591d..3906fb3 100644
24--- a/meson.build
25+++ b/meson.build
26@@ -606,6 +606,10 @@ if bashcomp_dep.found()
27 endif
28 endif
29
30+installed_tests_enabled = get_option('installed_tests')
31+installed_tests_metadir = join_paths(datadir, 'installed-tests', meson.project_name())
32+installed_tests_execdir = join_paths(libexecdir, 'installed-tests', meson.project_name())
33+
34 plugins_install_dir = join_paths(get_option('libdir'), 'gstreamer-1.0')
35
36 pkgconfig = import('pkgconfig')
37diff --git a/meson_options.txt b/meson_options.txt
38index 7363bdb..a34ba37 100644
39--- a/meson_options.txt
40+++ b/meson_options.txt
41@@ -15,6 +15,7 @@ option('poisoning', type : 'boolean', value : false, description : 'Enable poiso
42 option('memory-alignment', type: 'combo',
43 choices : ['1', '2', '4', '8', '16', '32', '64', '128', '256', '512', '1024', '2048', '4096', '8192', 'malloc', 'pagesize'],
44 value: 'malloc')
45+option('installed_tests', type : 'boolean', value : false, description : 'Enable installed tests')
46
47 # Feature options
48 option('check', type : 'feature', value : 'auto', description : 'Build unit test libraries')
49diff --git a/tests/check/meson.build b/tests/check/meson.build
50index 16caac7..f2d400f 100644
51--- a/tests/check/meson.build
52+++ b/tests/check/meson.build
53@@ -124,10 +124,16 @@ test_defines = [
54 '-UG_DISABLE_ASSERT',
55 '-UG_DISABLE_CAST_CHECKS',
56 '-DGST_CHECK_TEST_ENVIRONMENT_BEACON="GST_STATE_IGNORE_ELEMENTS"',
57- '-DTESTFILE="' + meson.current_source_dir() + '/meson.build"',
58 '-DGST_DISABLE_DEPRECATED',
59 ]
60
61+testfile = meson.current_source_dir() + '/meson.build'
62+if installed_tests_enabled
63+ install_data(testfile, install_dir : installed_tests_metadir, rename : 'testfile')
64+ testfile = installed_tests_metadir + '/testfile'
65+endif
66+test_defines += '-DTESTFILE="@0@"'.format(testfile)
67+
68 # sanity checking
69 if get_option('check').disabled()
70 if get_option('tests').enabled()
71@@ -150,6 +156,8 @@ foreach t : core_tests
72 include_directories : [configinc],
73 link_with : link_with_libs,
74 dependencies : gst_deps + test_deps,
75+ install_dir: installed_tests_execdir,
76+ install: installed_tests_enabled,
77 )
78
79 env = environment()
80@@ -161,6 +169,18 @@ foreach t : core_tests
81 env.set('GST_PLUGIN_SCANNER_1_0', gst_scanner_dir + '/gst-plugin-scanner')
82 env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer')
83
84+ if installed_tests_enabled
85+ test_conf = configuration_data()
86+ test_conf.set('installed_tests_dir', join_paths(prefix, installed_tests_execdir))
87+ test_conf.set('program', test_name)
88+ configure_file(
89+ input: 'template.test.in',
90+ output: test_name + '.test',
91+ install_dir: installed_tests_metadir,
92+ configuration: test_conf
93+ )
94+ endif
95+
96 test(test_name, exe, env: env, timeout : 3 * 60)
97 endif
98 endforeach
99diff --git a/tests/check/template.test.in b/tests/check/template.test.in
100new file mode 100644
101index 0000000..f701627
102--- /dev/null
103+++ b/tests/check/template.test.in
104@@ -0,0 +1,3 @@
105+[Test]
106+Type=session
107+Exec=@installed_tests_dir@/@program@
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch
deleted file mode 100644
index 10a6dcc61..000000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch
+++ /dev/null
@@ -1,50 +0,0 @@
1From fe830f0f75f3b4b41e3dbef8d4cf6ee4103c9e06 Mon Sep 17 00:00:00 2001
2From: Jose Quaresma <quaresma.jose@gmail.com>
3Date: Sat, 24 Apr 2021 10:34:47 +0100
4Subject: [PATCH 3/4] tests: use a dictionaries for environment
5
6meson environment() can't be passed to configure_file and it is needed for installed_tests,
7use a dictionary as this is simplest solution to install the environment.
8
9Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789]
10
11Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
12---
13 subprojects/gstreamer/tests/check/meson.build | 21 ++++++++++++-------
14 1 file changed, 13 insertions(+), 8 deletions(-)
15
16diff --git a/subprojects/gstreamer/tests/check/meson.build b/subprojects/gstreamer/tests/check/meson.build
17index 00a138a568..48ec2532f8 100644
18--- a/subprojects/gstreamer/tests/check/meson.build
19+++ b/subprojects/gstreamer/tests/check/meson.build
20@@ -161,14 +161,19 @@ foreach t : core_tests
21 install: installed_tests_enabled,
22 )
23
24- env = environment()
25- env.set('GST_PLUGIN_PATH_1_0', meson.project_build_root())
26- env.set('GST_PLUGIN_SYSTEM_PATH_1_0', '')
27- env.set('GST_STATE_IGNORE_ELEMENTS', '')
28- env.set('CK_DEFAULT_TIMEOUT', '20')
29- env.set('GST_REGISTRY', '@0@/@1@.registry'.format(meson.current_build_dir(), test_name))
30- env.set('GST_PLUGIN_SCANNER_1_0', gst_scanner_dir + '/gst-plugin-scanner')
31- env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer')
32+ # meson environment object can't be passed to configure_file and
33+ # installed tests uses configure_file to install the environment.
34+ # use a dictionary as this is the simplest solution
35+ # to install the environment.
36+ env = {
37+ 'GST_PLUGIN_PATH_1_0': meson.project_build_root(),
38+ 'GST_PLUGIN_SYSTEM_PATH_1_0': '',
39+ 'GST_STATE_IGNORE_ELEMENTS': '',
40+ 'CK_DEFAULT_TIMEOUT': '20',
41+ 'GST_REGISTRY': '@0@/@1@.registry'.format(meson.current_build_dir(), test_name),
42+ 'GST_PLUGIN_SCANNER_1_0': gst_scanner_dir + '/gst-plugin-scanner',
43+ 'GST_PLUGIN_LOADING_WHITELIST': 'gstreamer',
44+ }
45
46 if installed_tests_enabled
47 test_conf = configuration_data()
48--
492.33.1
50
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch
deleted file mode 100644
index efa004f8c..000000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch
+++ /dev/null
@@ -1,74 +0,0 @@
1From 4dcbabebca2ad6f1fdd59ee35a858082e87db7b6 Mon Sep 17 00:00:00 2001
2From: Jose Quaresma <quaresma.jose@gmail.com>
3Date: Sun, 2 May 2021 01:58:01 +0100
4Subject: [PATCH 4/4] tests: add helper script to run the installed_tests
5
6- this is a bash script that will run the installed_tests
7with some of the environment variables used in the meson
8testing framework.
9
10Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789]
11
12Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
13---
14 subprojects/gstreamer/tests/check/meson.build | 17 +++++++++++++++++
15 .../gstreamer/tests/check/template.sh.in | 9 +++++++++
16 .../gstreamer/tests/check/template.test.in | 2 +-
17 3 files changed, 27 insertions(+), 1 deletion(-)
18 create mode 100755 subprojects/gstreamer/tests/check/template.sh.in
19
20diff --git a/subprojects/gstreamer/tests/check/meson.build b/subprojects/gstreamer/tests/check/meson.build
21index 48ec2532f8..7dc4990d4e 100644
22--- a/subprojects/gstreamer/tests/check/meson.build
23+++ b/subprojects/gstreamer/tests/check/meson.build
24@@ -185,6 +185,23 @@ foreach t : core_tests
25 install_dir: installed_tests_metadir,
26 configuration: test_conf
27 )
28+
29+ # All the tests will be deployed on the target machine and
30+ # we use the home folder ~ for the registry which will then expand at runtime.
31+ # Using the /tmp/gstreamer-1.0/@0@.registry can be problematic as it mostly
32+ # is mounted using tmpfs and if the machine crash from some reason we can lost the registry
33+ # that is useful for debug propose of the tests itself.
34+ env += {'GST_REGISTRY': '~/.cache/gstreamer-1.0/@0@.registry'.format(test_name)}
35+
36+ # Set the full path for the test it self.
37+ env += {'TEST': '@0@/@1@'.format(join_paths(prefix, installed_tests_execdir), test_name)}
38+
39+ configure_file(
40+ input : 'template.sh.in',
41+ output: test_name + '.sh',
42+ install_dir: installed_tests_execdir,
43+ configuration : env,
44+ )
45 endif
46
47 test(test_name, exe, env: env, timeout : 3 * 60)
48diff --git a/subprojects/gstreamer/tests/check/template.sh.in b/subprojects/gstreamer/tests/check/template.sh.in
49new file mode 100755
50index 0000000000..cf7d31b0ea
51--- /dev/null
52+++ b/subprojects/gstreamer/tests/check/template.sh.in
53@@ -0,0 +1,9 @@
54+#!/bin/sh
55+
56+set -ax
57+
58+CK_DEFAULT_TIMEOUT="@CK_DEFAULT_TIMEOUT@"
59+GST_PLUGIN_LOADING_WHITELIST="@GST_PLUGIN_LOADING_WHITELIST@"
60+GST_REGISTRY=@GST_REGISTRY@
61+GST_STATE_IGNORE_ELEMENTS="@GST_STATE_IGNORE_ELEMENTS@"
62+exec @TEST@
63diff --git a/subprojects/gstreamer/tests/check/template.test.in b/subprojects/gstreamer/tests/check/template.test.in
64index f701627f87..b74ef6ad73 100644
65--- a/subprojects/gstreamer/tests/check/template.test.in
66+++ b/subprojects/gstreamer/tests/check/template.test.in
67@@ -1,3 +1,3 @@
68 [Test]
69 Type=session
70-Exec=@installed_tests_dir@/@program@
71+Exec=@installed_tests_dir@/@program@.sh
72--
732.33.1
74
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-remove-gstbin-test_watch_for_state_change-test.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-remove-gstbin-test_watch_for_state_change-test.patch
deleted file mode 100644
index f51df6d20..000000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-remove-gstbin-test_watch_for_state_change-test.patch
+++ /dev/null
@@ -1,107 +0,0 @@
1From b935abba3d8fa3ea1ce384c08e650afd8c20b78a Mon Sep 17 00:00:00 2001
2From: Claudius Heine <ch@denx.de>
3Date: Wed, 2 Feb 2022 13:47:02 +0100
4Subject: [PATCH] tests: remove gstbin:test_watch_for_state_change testcase
5
6This testcase seems to be flaky, and upstream marked it as such:
7https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/778
8
9This patch removes the testcase to avoid it interfering with out ptest.
10
11Signed-off-by: Claudius Heine <ch@denx.de>
12
13Upstream-Status: Inappropriate [needs proper upstream fix]
14---
15 tests/check/gst/gstbin.c | 69 -------------------
16 1 file changed, 69 deletions(-)
17
18diff --git a/tests/check/gst/gstbin.c b/tests/check/gst/gstbin.c
19index e366d5fe20..ac29d81474 100644
20--- a/tests/check/gst/gstbin.c
21+++ b/tests/check/gst/gstbin.c
22@@ -691,74 +691,6 @@ GST_START_TEST (test_message_state_changed_children)
23
24 GST_END_TEST;
25
26-GST_START_TEST (test_watch_for_state_change)
27-{
28- GstElement *src, *sink, *bin;
29- GstBus *bus;
30- GstStateChangeReturn ret;
31-
32- bin = gst_element_factory_make ("bin", NULL);
33- fail_unless (bin != NULL, "Could not create bin");
34-
35- bus = g_object_new (gst_bus_get_type (), NULL);
36- gst_object_ref_sink (bus);
37- gst_element_set_bus (GST_ELEMENT_CAST (bin), bus);
38-
39- src = gst_element_factory_make ("fakesrc", NULL);
40- fail_if (src == NULL, "Could not create fakesrc");
41- sink = gst_element_factory_make ("fakesink", NULL);
42- fail_if (sink == NULL, "Could not create fakesink");
43-
44- gst_bin_add (GST_BIN (bin), sink);
45- gst_bin_add (GST_BIN (bin), src);
46-
47- fail_unless (gst_element_link (src, sink), "could not link src and sink");
48-
49- /* change state, spawning two times three messages */
50- ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_PAUSED);
51- fail_unless (ret == GST_STATE_CHANGE_ASYNC);
52- ret =
53- gst_element_get_state (GST_ELEMENT (bin), NULL, NULL,
54- GST_CLOCK_TIME_NONE);
55- fail_unless (ret == GST_STATE_CHANGE_SUCCESS);
56-
57- pop_state_changed (bus, 6);
58- pop_async_done (bus);
59- pop_latency (bus);
60-
61- fail_unless (gst_bus_have_pending (bus) == FALSE,
62- "Unexpected messages on bus");
63-
64- ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_PLAYING);
65- fail_unless (ret == GST_STATE_CHANGE_SUCCESS);
66-
67- pop_state_changed (bus, 3);
68-
69- /* this one might return either SUCCESS or ASYNC, likely SUCCESS */
70- ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_PAUSED);
71- gst_element_get_state (GST_ELEMENT (bin), NULL, NULL, GST_CLOCK_TIME_NONE);
72-
73- pop_state_changed (bus, 3);
74- if (ret == GST_STATE_CHANGE_ASYNC) {
75- pop_async_done (bus);
76- pop_latency (bus);
77- }
78-
79- fail_unless (gst_bus_have_pending (bus) == FALSE,
80- "Unexpected messages on bus");
81-
82- gst_bus_set_flushing (bus, TRUE);
83-
84- ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_NULL);
85- fail_unless (ret == GST_STATE_CHANGE_SUCCESS);
86-
87- /* clean up */
88- gst_object_unref (bus);
89- gst_object_unref (bin);
90-}
91-
92-GST_END_TEST;
93-
94 GST_START_TEST (test_state_change_error_message)
95 {
96 GstElement *src, *sink, *bin;
97@@ -1956,7 +1888,6 @@ gst_bin_suite (void)
98 tcase_add_test (tc_chain, test_message_state_changed);
99 tcase_add_test (tc_chain, test_message_state_changed_child);
100 tcase_add_test (tc_chain, test_message_state_changed_children);
101- tcase_add_test (tc_chain, test_watch_for_state_change);
102 tcase_add_test (tc_chain, test_state_change_error_message);
103 tcase_add_test (tc_chain, test_add_linked);
104 tcase_add_test (tc_chain, test_add_self);
105--
1062.33.1
107
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0_1.22.5.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0_1.24.7.imx.bb
index ce7b3f1d4..a5fc88444 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0_1.22.5.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0_1.24.7.imx.bb
@@ -92,13 +92,20 @@ LIC_FILES_CHKSUM = " \
92" 92"
93 93
94# Use i.MX fork of GST for customizations 94# Use i.MX fork of GST for customizations
95SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz" 95SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \
96 file://0001-tests-respect-the-idententaion-used-in-meson.patch \
97 file://0002-tests-add-support-for-install-the-tests.patch \
98 file://0003-tests-use-a-dictionaries-for-environment.patch;striplevel=3 \
99 file://0004-tests-add-helper-script-to-run-the-installed_tests.patch;striplevel=3 \
100"
96SRC_URI:prepend = "${GST1.0_SRC};branch=${SRCBRANCH} " 101SRC_URI:prepend = "${GST1.0_SRC};branch=${SRCBRANCH} "
97GST1.0_SRC ?= "gitsm://github.com/nxp-imx/gstreamer.git;protocol=https" 102GST1.0_SRC ?= "gitsm://github.com/nxp-imx/gstreamer.git;protocol=https"
98SRCBRANCH = "MM_04.08.03_2312_L6.6.y" 103SRCBRANCH = "MM_04.09.03_2412_L6.12.y"
99SRCREV = "1a43c16272a7f4274eb8260e03206a57f317d823" 104SRCREV = "e0d37a7d773a502956f54eced8cd701ec7fa5ff5"
105
106S = "${UNPACKDIR}/${BP}"
100 107
101S = "${WORKDIR}/git" 108PACKAGECONFIG[tests] = "-Dtests=enabled,-Dtests=disabled"
102 109
103COMPATIBLE_MACHINE = "(imx-nxp-bsp)" 110COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
104 111
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0001-aiurdemux-Fix-type-of-USER_DATA_LOCATION.patch b/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0001-aiurdemux-Fix-type-of-USER_DATA_LOCATION.patch
deleted file mode 100644
index bdcb3f48e..000000000
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0001-aiurdemux-Fix-type-of-USER_DATA_LOCATION.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1From 090fb758a63b7d362d9bee8b8a665d1346c83f83 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 13 Mar 2023 20:15:22 -0700
4Subject: [PATCH 01/10] aiurdemux: Fix type of USER_DATA_LOCATION
5
6It should be char pointer not integer
7Fixe
8plugins/aiurdemux/aiurdemux.c:198:47: error: incompatible integer to pointer conversion initializin
9g 'const gchar *' (aka 'const char *') with an expression of type 'int' [-Wint-conversion]
10 {USER_DATA_LOCATION, USER_DATA_FORMAT_UTF8, -1,
11 ^~
12Upstream-Status: Submitted [https://github.com/nxp-imx/imx-gst1.0-plugin/pull/4]
13Signed-off-by: Khem Raj <raj.khem@gmail.com>
14---
15 plugins/aiurdemux/aiurdemux.c | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-)
17
18diff --git a/plugins/aiurdemux/aiurdemux.c b/plugins/aiurdemux/aiurdemux.c
19index 532b439..39c50ea 100755
20--- a/plugins/aiurdemux/aiurdemux.c
21+++ b/plugins/aiurdemux/aiurdemux.c
22@@ -195,7 +195,7 @@ static AiurDemuxTagEntry g_user_data_entry[] = {
23 "Track Number : %s\n"},
24 {USER_DATA_TOTALTRACKNUMBER, USER_DATA_FORMAT_UTF8, GST_TAG_TRACK_COUNT,
25 "Track Count : %s\n"},
26- {USER_DATA_LOCATION, USER_DATA_FORMAT_UTF8, -1,
27+ {USER_DATA_LOCATION, USER_DATA_FORMAT_UTF8, (const gchar*)-1,
28 "Location : %s\n"},
29 {USER_DATA_KEYWORDS, USER_DATA_FORMAT_UTF8, GST_TAG_KEYWORDS,
30 "Keywords : %s\n"},
31--
322.39.2
33
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0002-aiurdemux.h-Include-glib-gprintf.h-for-g_printf-prot.patch b/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0002-aiurdemux.h-Include-glib-gprintf.h-for-g_printf-prot.patch
deleted file mode 100644
index d3fdf924b..000000000
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0002-aiurdemux.h-Include-glib-gprintf.h-for-g_printf-prot.patch
+++ /dev/null
@@ -1,28 +0,0 @@
1From f8b8322cd4c3a69e5cb47b5cb33abe860e89d6ed Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 12 Mar 2023 20:33:54 -0700
4Subject: [PATCH 02/10] aiurdemux.h: Include glib/gprintf.h for g_printf
5 prototype
6
7Upstream-Status: Submitted [https://github.com/nxp-imx/imx-gst1.0-plugin/pull/4]
8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9---
10 plugins/aiurdemux/aiurdemux.h | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-)
12
13diff --git a/plugins/aiurdemux/aiurdemux.h b/plugins/aiurdemux/aiurdemux.h
14index 1d7d0a0..f7fcb2e 100755
15--- a/plugins/aiurdemux/aiurdemux.h
16+++ b/plugins/aiurdemux/aiurdemux.h
17@@ -39,7 +39,7 @@
18 #include <gst/gst.h>
19 #include <gst/base/gstadapter.h>
20 #include <gst/tag/tag.h>
21-
22+#include <glib/gprintf.h>
23 //#include "mfw_gst_utils.h"
24
25 #include "fsl_parser.h"
26--
272.39.2
28
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0003-grecorder-Fix-build-with-clang.patch b/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0003-grecorder-Fix-build-with-clang.patch
deleted file mode 100644
index a690b4975..000000000
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0003-grecorder-Fix-build-with-clang.patch
+++ /dev/null
@@ -1,44 +0,0 @@
1From 19e6a541d2026386c9cfdeca0eebd269fef2536c Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 13 Mar 2023 20:29:01 -0700
4Subject: [PATCH 03/10] grecorder: Fix build with clang
5
6Add missing includes for APIs from libc and glib
7Add prototype declaration for post_message before
8using it in macros later in the same source file
9
10Upstream-Status: Submitted [https://github.com/nxp-imx/imx-gst1.0-plugin/pull/4]
11Signed-off-by: Khem Raj <raj.khem@gmail.com>
12---
13 tools/grecorder/grecorder.c | 5 ++++-
14 1 file changed, 4 insertions(+), 1 deletion(-)
15
16diff --git a/tools/grecorder/grecorder.c b/tools/grecorder/grecorder.c
17index c8eff2f..89aa801 100644
18--- a/tools/grecorder/grecorder.c
19+++ b/tools/grecorder/grecorder.c
20@@ -23,10 +23,11 @@
21 #include <semaphore.h>
22 #include <pthread.h>
23 #include <signal.h>
24+#include <unistd.h> /* sleep */
25 #include <getopt.h>
26 #define __USE_LARGEFILE64
27 #include <sys/statvfs.h>
28-
29+#include <glib/gprintf.h> /* g_print */
30 #include "recorder_engine.h"
31
32 #define LOG_ERROR printf
33@@ -168,6 +169,8 @@ static RecorderMessage latest_message = MESSAGE_NULL;
34
35 static volatile sig_atomic_t quit_flag = 0;
36
37+static void post_message (RecorderMessage message);
38+
39 static void signal_handler(int signum)
40 {
41 quit_flag = 1;
42--
432.39.2
44
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0004-gstimxcommon-Return-0-instead-of-NULL-for-a-function.patch b/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0004-gstimxcommon-Return-0-instead-of-NULL-for-a-function.patch
deleted file mode 100644
index 292ab63f5..000000000
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0004-gstimxcommon-Return-0-instead-of-NULL-for-a-function.patch
+++ /dev/null
@@ -1,87 +0,0 @@
1From 141f8f692ae2c7e6d41a2d78113c806602122ad5 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 12 Mar 2023 19:51:27 -0700
4Subject: [PATCH 04/10] gstimxcommon: Return 0 instead of NULL for a functions
5 returning unsigned long
6
7Fixes
8gstimxcommon.c:113:10: error: incompatible pointer to integer conversion returning 'void *' from a function with result type 'unsigned long' [-Wint-conversion]
9 return NULL;
10
11Upstream-Status: Submitted [https://github.com/nxp-imx/imx-gst1.0-plugin/pull/4]
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13---
14 libs/gstimxcommon.c | 18 +++++++++---------
15 1 file changed, 9 insertions(+), 9 deletions(-)
16
17diff --git a/libs/gstimxcommon.c b/libs/gstimxcommon.c
18index 27fd913..803c6e5 100644
19--- a/libs/gstimxcommon.c
20+++ b/libs/gstimxcommon.c
21@@ -35,13 +35,13 @@ unsigned long phy_addr_from_fd(int dmafd)
22 int ret, fd;
23
24 if (dmafd < 0)
25- return NULL;
26+ return 0;
27
28 #if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0)
29 #ifdef USE_ION
30 fd = open(dev_ion, O_RDWR);
31 if(fd < 0) {
32- return NULL;
33+ return 0;
34 }
35
36 struct ion_phys_dma_data data = {
37@@ -58,18 +58,18 @@ unsigned long phy_addr_from_fd(int dmafd)
38 ret = ioctl(fd, ION_IOC_CUSTOM, &custom);
39 close(fd);
40 if (ret < 0)
41- return NULL;
42+ return 0;
43
44 return data.phys;
45 #else
46- return NULL;
47+ return 0;
48 #endif /* USE_ION */
49 #else
50 struct dma_buf_phys dma_phys;
51
52 ret = ioctl(dmafd, DMA_BUF_IOCTL_PHYS, &dma_phys);
53 if (ret < 0)
54- return NULL;
55+ return 0;
56
57 return dma_phys.phys;
58 #endif
59@@ -86,7 +86,7 @@ unsigned long phy_addr_from_vaddr(void *vaddr, int size)
60 #if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0)
61 fd = open(dev_ion, O_RDWR);
62 if(fd < 0) {
63- return NULL;
64+ return 0;
65 }
66
67 struct ion_phys_virt_data data = {
68@@ -103,13 +103,13 @@ unsigned long phy_addr_from_vaddr(void *vaddr, int size)
69 ret = ioctl(fd, ION_IOC_CUSTOM, &custom);
70 close(fd);
71 if (ret < 0)
72- return NULL;
73+ return 0;
74
75 return data.phys;
76 #else
77- return NULL;
78+ return 0;
79 #endif
80 #else
81- return NULL;
82+ return 0;
83 #endif
84 }
85--
862.39.2
87
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0005-aiurstreamcache-Include-gst-gstinfo.h.patch b/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0005-aiurstreamcache-Include-gst-gstinfo.h.patch
deleted file mode 100644
index 5f67ba1b0..000000000
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0005-aiurstreamcache-Include-gst-gstinfo.h.patch
+++ /dev/null
@@ -1,28 +0,0 @@
1From 379b0492a4b53fd8fd42c734d04fd62df2e0465f Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 13 Mar 2023 20:16:48 -0700
4Subject: [PATCH 05/10] aiurstreamcache: Include gst/gstinfo.h
5
6Its needed for various GST_* defines
7
8Upstream-Status: Submitted [https://github.com/nxp-imx/imx-gst1.0-plugin/pull/4]
9Signed-off-by: Khem Raj <raj.khem@gmail.com>
10---
11 plugins/aiurdemux/aiurstreamcache.c | 1 +
12 1 file changed, 1 insertion(+)
13
14diff --git a/plugins/aiurdemux/aiurstreamcache.c b/plugins/aiurdemux/aiurstreamcache.c
15index d566268..e114a9d 100755
16--- a/plugins/aiurdemux/aiurstreamcache.c
17+++ b/plugins/aiurdemux/aiurstreamcache.c
18@@ -33,6 +33,7 @@
19 * Changelog:
20 *
21 */
22+ #include <gst/gstinfo.h>
23
24 GST_DEBUG_CATEGORY_EXTERN (aiurdemux_debug);
25 #define GST_CAT_DEFAULT aiurdemux_debug
26--
272.39.2
28
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0006-Fix-typecast-warnings-found-with-clang.patch b/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0006-Fix-typecast-warnings-found-with-clang.patch
deleted file mode 100644
index ae3d10618..000000000
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0006-Fix-typecast-warnings-found-with-clang.patch
+++ /dev/null
@@ -1,61 +0,0 @@
1From 02e16c4de3f138f0ebabf699e840bb86c98be599 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 12 Mar 2023 20:45:23 -0700
4Subject: [PATCH 06/10] Fix typecast warnings found with clang
5
6Upstream-Status: Submitted [https://github.com/nxp-imx/imx-gst1.0-plugin/pull/4]
7Signed-off-by: Khem Raj <raj.khem@gmail.com>
8---
9 libs/device-2d/imx_2d_device_g2d.c | 15 ++++++++-------
10 1 file changed, 8 insertions(+), 7 deletions(-)
11
12diff --git a/libs/device-2d/imx_2d_device_g2d.c b/libs/device-2d/imx_2d_device_g2d.c
13index 2672e0b..6a36f6a 100755
14--- a/libs/device-2d/imx_2d_device_g2d.c
15+++ b/libs/device-2d/imx_2d_device_g2d.c
16@@ -425,7 +425,7 @@ static gint imx_g2d_blit(Imx2DDevice *device,
17 goto err;
18 }
19 if (paddr) {
20- src->mem->paddr = paddr;
21+ src->mem->paddr = (guint8*)paddr;
22 } else {
23 GST_ERROR ("Can't get physical address.");
24 ret = -1;
25@@ -435,7 +435,7 @@ static gint imx_g2d_blit(Imx2DDevice *device,
26 if (!dst->mem->paddr) {
27 paddr = phy_addr_from_fd (dst->fd[0]);
28 if (paddr) {
29- dst->mem->paddr = paddr;
30+ dst->mem->paddr = (guint8*)paddr;
31 } else {
32 GST_ERROR ("Can't get physical address.");
33 ret = -1;
34@@ -474,10 +474,11 @@ static gint imx_g2d_blit(Imx2DDevice *device,
35
36 if (src->fd[1] >= 0)
37 {
38- if (!src->mem->user_data)
39- src->mem->user_data = g2d->src.base.planes[1] = phy_addr_from_fd (src->fd[1]);
40- else
41- g2d->src.base.planes[1] = src->mem->user_data;
42+ if (!src->mem->user_data) {
43+ g2d->src.base.planes[1] = (gint)phy_addr_from_fd (src->fd[1]);
44+ src->mem->user_data = (gpointer *)g2d->src.base.planes[1];
45+ } else
46+ g2d->src.base.planes[1] = (unsigned long)src->mem->user_data;
47 }
48 switch (src->interlace_type) {
49 case IMX_2D_INTERLACE_INTERLEAVED:
50@@ -693,7 +694,7 @@ static gint imx_g2d_fill_color(Imx2DDevice *device, Imx2DFrame *dst,
51 if (!dst->mem->paddr) {
52 paddr = phy_addr_from_fd (dst->fd[0]);
53 if (paddr) {
54- dst->mem->paddr = paddr;
55+ dst->mem->paddr = (guint8*)paddr;
56 } else {
57 GST_ERROR ("Can't get physical address.");
58 return -1;
59--
602.39.2
61
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0007-gstimxv4l2-Fix-typecasting-errors.patch b/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0007-gstimxv4l2-Fix-typecasting-errors.patch
deleted file mode 100644
index 1983838af..000000000
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0007-gstimxv4l2-Fix-typecasting-errors.patch
+++ /dev/null
@@ -1,30 +0,0 @@
1From a1a2069403e227d4d40fc99257d1be077f65bdc8 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 12 Mar 2023 19:54:18 -0700
4Subject: [PATCH 07/10] gstimxv4l2: Fix typecasting errors
5
6Fixes
7gstimxv4l2.c:1702:22: error: incompatible pointer to integer conversion assigning to 'unsigned long' from 'guint8 *' (aka 'unsigned char *') [-Wint-conversion]
8
9Upstream-Status: Submitted [https://github.com/nxp-imx/imx-gst1.0-plugin/pull/4]
10Signed-off-by: Khem Raj <raj.khem@gmail.com>
11---
12 libs/v4l2_core/gstimxv4l2.c | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-)
14
15diff --git a/libs/v4l2_core/gstimxv4l2.c b/libs/v4l2_core/gstimxv4l2.c
16index 1dc826b..bf2620a 100755
17--- a/libs/v4l2_core/gstimxv4l2.c
18+++ b/libs/v4l2_core/gstimxv4l2.c
19@@ -1699,7 +1699,7 @@ gint gst_imx_v4l2_register_buffer (gpointer v4l2handle, PhyMemBlock *memblk)
20 v4l2buf->type = handle->type;
21 v4l2buf->memory = handle->memory_mode;
22 v4l2buf->index = handle->allocated;
23- v4l2buf->m.userptr = memblk->paddr;
24+ v4l2buf->m.userptr = (unsigned long)memblk->paddr;
25 v4l2buf->length = memblk->size;
26 handle->buffer_pair[handle->allocated].vaddr = memblk->vaddr;
27
28--
292.39.2
30
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0008-beepdec-Declare-beep_register_external_typefinders.patch b/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0008-beepdec-Declare-beep_register_external_typefinders.patch
deleted file mode 100644
index 211bade10..000000000
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0008-beepdec-Declare-beep_register_external_typefinders.patch
+++ /dev/null
@@ -1,32 +0,0 @@
1From e86c20fee52f79a270a1913c5f0be98fb3f5cb77 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 13 Mar 2023 20:18:18 -0700
4Subject: [PATCH 08/10] beepdec: Declare beep_register_external_typefinders
5
6Fixes
7plugins/beepdec/beep.c:45:3: error: call to undeclared function 'beep_register_external_typefinders'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
8 beep_register_external_typefinders (plugin);
9 ^
10
11Upstream-Status: Submitted [https://github.com/nxp-imx/imx-gst1.0-plugin/pull/4]
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13---
14 plugins/beepdec/beep.c | 2 +-
15 1 file changed, 1 insertion(+), 1 deletion(-)
16
17diff --git a/plugins/beepdec/beep.c b/plugins/beepdec/beep.c
18index 3543352..e174bb3 100755
19--- a/plugins/beepdec/beep.c
20+++ b/plugins/beepdec/beep.c
21@@ -37,7 +37,7 @@
22 #endif
23 #include "beepdec.h"
24 #include "gstimxcommon.h"
25-
26+extern gboolean beep_register_external_typefinders (GstPlugin * plugin);
27 static gboolean
28 plugin_init (GstPlugin * plugin)
29 {
30--
312.39.2
32
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0009-gstimxv4l2.c-Fix-incompatible-integer-to-pointer-con.patch b/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0009-gstimxv4l2.c-Fix-incompatible-integer-to-pointer-con.patch
deleted file mode 100644
index 567d10267..000000000
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0009-gstimxv4l2.c-Fix-incompatible-integer-to-pointer-con.patch
+++ /dev/null
@@ -1,41 +0,0 @@
1From 8a3d7f26c73bdfe050d3331b30ae2f5917dc6723 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 12 Mar 2023 19:59:22 -0700
4Subject: [PATCH 09/10] gstimxv4l2.c: Fix incompatible integer to pointer
5 conversion returning
6
7Fixes
8gstimxv4l2.c:1587:24: error: incompatible pointer to integer conversion assigning to 'unsigned long' from 'guint8 *' (aka 'unsigned char *') [-Wint-c
9onversion]
10
11Upstream-Status: Submitted [https://github.com/nxp-imx/imx-gst1.0-plugin/pull/4]
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13---
14 libs/v4l2_core/gstimxv4l2.c | 4 ++--
15 1 file changed, 2 insertions(+), 2 deletions(-)
16
17diff --git a/libs/v4l2_core/gstimxv4l2.c b/libs/v4l2_core/gstimxv4l2.c
18index bf2620a..0fd7452 100755
19--- a/libs/v4l2_core/gstimxv4l2.c
20+++ b/libs/v4l2_core/gstimxv4l2.c
21@@ -1576,7 +1576,7 @@ static void * gst_imx_v4l2_find_buffer(gpointer v4l2handle, PhyMemBlock *memblk)
22
23 if (handle->allocated >= MAX_BUFFER) {
24 GST_ERROR ("No more v4l2 buffer for allocating.\n");
25- return -1;
26+ return NULL;
27 }
28
29 v4l2buf = &handle->buffer_pair[handle->allocated].v4l2buffer;
30@@ -1584,7 +1584,7 @@ static void * gst_imx_v4l2_find_buffer(gpointer v4l2handle, PhyMemBlock *memblk)
31 v4l2buf->type = handle->type;
32 v4l2buf->memory = handle->memory_mode;
33 v4l2buf->index = handle->allocated;
34- v4l2buf->m.userptr = memblk->paddr;
35+ v4l2buf->m.userptr = (unsigned long)memblk->paddr;
36 v4l2buf->length = memblk->size;
37 handle->buffer_pair[handle->allocated].vaddr = memblk->vaddr;
38
39--
402.39.2
41
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0010-provide-declaration-for-aiur_register_external_typef.patch b/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0010-provide-declaration-for-aiur_register_external_typef.patch
deleted file mode 100644
index e9b1a0938..000000000
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0010-provide-declaration-for-aiur_register_external_typef.patch
+++ /dev/null
@@ -1,28 +0,0 @@
1From c2144da90e64547d9e346f8e721a0d2155ed610b Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 12 Mar 2023 21:09:49 -0700
4Subject: [PATCH 10/10] provide declaration for
5 aiur_register_external_typefinders
6
7Upstream-Status: Submitted [https://github.com/nxp-imx/imx-gst1.0-plugin/pull/4]
8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9---
10 plugins/aiurdemux/aiur.c | 2 ++
11 1 file changed, 2 insertions(+)
12
13diff --git a/plugins/aiurdemux/aiur.c b/plugins/aiurdemux/aiur.c
14index 2a52465..681ae2e 100755
15--- a/plugins/aiurdemux/aiur.c
16+++ b/plugins/aiurdemux/aiur.c
17@@ -41,6 +41,8 @@
18 #include "aiurdemux.h"
19 #include "gstimxcommon.h"
20
21+extern gboolean aiur_register_external_typefinders (GstPlugin * plugin);
22+
23 static gboolean
24 plugin_init (GstPlugin * plugin)
25 {
26--
272.39.2
28
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0011-meson-Undef-_TIME_BITS-along-with-_FILE_OFFSET_BITS.patch b/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0011-meson-Undef-_TIME_BITS-along-with-_FILE_OFFSET_BITS.patch
deleted file mode 100644
index 5a58a5a67..000000000
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0011-meson-Undef-_TIME_BITS-along-with-_FILE_OFFSET_BITS.patch
+++ /dev/null
@@ -1,34 +0,0 @@
1From bda3461b0b6493f3e04910e82e6e530a64af26b1 Mon Sep 17 00:00:00 2001
2From: Tom Hochstein <tom.hochstein@nxp.com>
3Date: Mon, 24 Jul 2023 12:09:34 -0700
4Subject: [PATCH] meson: Undef _TIME_BITS along with _FILE_OFFSET_BITS
5
6On gcc 13, _TIME_BITS is set to 64 and causes failure with the undef of
7_FILE_OFFSET_BITS:
8```
9/usr/include/features-time64.h:26:5: error: #error "_TIME_BITS=64 is allowed only with _FILE_OFFSET_BITS=64"
10 26 | # error "_TIME_BITS=64 is allowed only with _FILE_OFFSET_BITS=64"
11 | ^~~~~
12```
13
14Upstream-Status: Pending
15Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
16---
17 meson.build | 1 +
18 1 file changed, 1 insertion(+)
19
20diff --git a/meson.build b/meson.build
21index 7ec5c70..64b2930 100644
22--- a/meson.build
23+++ b/meson.build
24@@ -24,6 +24,7 @@ gst_dep = dependency('gstreamer-' + api_version, version : gst_req)
25 #meson automaticaly add _FILE_OFFSET_BITS=64 to gcc, this will make ipu test
26 #case fail when do mmap on 6q, autoconf didn't add this define, so undef it
27 add_project_arguments('-U_FILE_OFFSET_BITS', language: 'c')
28+add_project_arguments('-U_TIME_BITS', language: 'c')
29
30 #below two marcos are defined in autoconf
31 add_project_arguments ('-DARM', language: 'c')
32--
332.25.1
34
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb
index a13cf30ab..d7ac9b474 100644
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb
+++ b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb
@@ -24,7 +24,9 @@ DEPENDS:append:imxvpu = " imx-vpuwrap"
24DEPENDS:append:imxfbdev:imxgpu = " libdrm" 24DEPENDS:append:imxfbdev:imxgpu = " libdrm"
25DEPENDS_IMXGPU = "" 25DEPENDS_IMXGPU = ""
26DEPENDS_IMXGPU:imxgpu = "${DEPENDS_IMX_OPENCL_CONVERTER}" 26DEPENDS_IMXGPU:imxgpu = "${DEPENDS_IMX_OPENCL_CONVERTER}"
27DEPENDS_IMX_OPENCL_CONVERTER = "" 27DEPENDS_IMX_OPENCL_CONVERTER = "imx-opencl-converter"
28DEPENDS_IMX_OPENCL_CONVERTER:mx6-nxp-bsp = ""
29DEPENDS_IMX_OPENCL_CONVERTER:mx7-nxp-bsp = ""
28DEPENDS_IMX_OPENCL_CONVERTER:mx8-nxp-bsp = "imx-opencl-converter" 30DEPENDS_IMX_OPENCL_CONVERTER:mx8-nxp-bsp = "imx-opencl-converter"
29DEPENDS_IMX_OPENCL_CONVERTER:mx8mm-nxp-bsp = "" 31DEPENDS_IMX_OPENCL_CONVERTER:mx8mm-nxp-bsp = ""
30DEPENDS_IMX_OPENCL_CONVERTER:mx95-nxp-bsp = "imx-opencl-converter" 32DEPENDS_IMX_OPENCL_CONVERTER:mx95-nxp-bsp = "imx-opencl-converter"
@@ -34,25 +36,11 @@ RREPLACES:${PN} = "gst1.0-fsl-plugin"
34RPROVIDES:${PN} = "gst1.0-fsl-plugin" 36RPROVIDES:${PN} = "gst1.0-fsl-plugin"
35RCONFLICTS:${PN} = "gst1.0-fsl-plugin" 37RCONFLICTS:${PN} = "gst1.0-fsl-plugin"
36 38
37PV = "4.8.3+git${SRCPV}" 39PV = "4.9.3+git${SRCPV}"
38 40
39SRC_URI = "git://github.com/nxp-imx/imx-gst1.0-plugin.git;protocol=https;branch=${SRCBRANCH} \ 41SRC_URI = "git://github.com/nxp-imx/imx-gst1.0-plugin.git;protocol=https;branch=${SRCBRANCH}"
40 file://0001-aiurdemux-Fix-type-of-USER_DATA_LOCATION.patch \ 42SRCBRANCH = "MM_04.09.03_2412_L6.12.y"
41 file://0002-aiurdemux.h-Include-glib-gprintf.h-for-g_printf-prot.patch \ 43SRCREV = "370510ef8137874339df18a2a35ec1d04d98fa0b"
42 file://0003-grecorder-Fix-build-with-clang.patch \
43 file://0004-gstimxcommon-Return-0-instead-of-NULL-for-a-function.patch \
44 file://0005-aiurstreamcache-Include-gst-gstinfo.h.patch \
45 file://0006-Fix-typecast-warnings-found-with-clang.patch \
46 file://0007-gstimxv4l2-Fix-typecasting-errors.patch \
47 file://0008-beepdec-Declare-beep_register_external_typefinders.patch \
48 file://0009-gstimxv4l2.c-Fix-incompatible-integer-to-pointer-con.patch \
49 file://0010-provide-declaration-for-aiur_register_external_typef.patch \
50 file://0011-meson-Undef-_TIME_BITS-along-with-_FILE_OFFSET_BITS.patch \
51 "
52SRCBRANCH = "MM_04.08.03_2312_L6.6.y"
53SRCREV = "91c7fec888cf8932c91e354331aad94975cae3ff"
54
55S = "${WORKDIR}/git"
56 44
57inherit meson pkgconfig use-imx-headers 45inherit meson pkgconfig use-imx-headers
58 46
@@ -61,13 +49,11 @@ PLATFORM:mx6sl-nxp-bsp = "MX6SL"
61PLATFORM:mx6sx-nxp-bsp = "MX6SX" 49PLATFORM:mx6sx-nxp-bsp = "MX6SX"
62PLATFORM:mx6ul-nxp-bsp = "MX6UL" 50PLATFORM:mx6ul-nxp-bsp = "MX6UL"
63PLATFORM:mx6sll-nxp-bsp = "MX6SLL" 51PLATFORM:mx6sll-nxp-bsp = "MX6SLL"
64PLATFORM:mx7-nxp-bsp= "MX7D" 52PLATFORM:mx7-nxp-bsp = "MX7D"
65PLATFORM:mx7ulp-nxp-bsp= "MX7ULP" 53PLATFORM:mx7ulp-nxp-bsp = "MX7ULP"
66PLATFORM:mx8-nxp-bsp = "MX8" 54PLATFORM:mx8-nxp-bsp = "MX8"
67PLATFORM:mx9-nxp-bsp = "MX9" 55PLATFORM:mx9-nxp-bsp = "MX9"
68 56
69CFLAGS:append:toolchain-clang = " -Wno-implicit-int -Wno-int-conversion -Wno-incompatible-function-pointer-types"
70
71# Todo add a mechanism to map possible build targets 57# Todo add a mechanism to map possible build targets
72EXTRA_OEMESON = "-Dplatform=${PLATFORM} \ 58EXTRA_OEMESON = "-Dplatform=${PLATFORM} \
73 -Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \ 59 -Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \