Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update gstreamer and imx-opencl-converter from 6.6.3-1.0.0 to 6.6.23-2.0.0 #1874

Merged
merged 2 commits into from
Aug 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 20 additions & 20 deletions conf/machine/include/imx-base.inc
Original file line number Diff line number Diff line change
Expand Up @@ -510,28 +510,28 @@ MACHINE_GSTREAMER_1_0_PLUGIN:mx8ulp-nxp-bsp ?= "imx-gst1.0-plugin"
MACHINE_GSTREAMER_1_0_PLUGIN:mx93-nxp-bsp ?= "imx-gst1.0-plugin"

# GStreamer forked recipes
PREFERRED_VERSION_gstreamer1.0:mx8-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx8-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-base:mx8-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-good:mx8-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0:mx9-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx9-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-base:mx9-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-good:mx9-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0:mx8-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx8-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-base:mx8-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-good:mx8-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0:mx9-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx9-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-base:mx9-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-good:mx9-nxp-bsp ??= "1.24.0.imx"

# GStreamer copied recipes
PREFERRED_VERSION_gst-devtools:mx8-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-libav:mx8-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-ugly:mx8-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-python:mx8-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-rtsp-server:mx8-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-vaapi:mx8-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gst-devtools:mx9-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-libav:mx9-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-ugly:mx9-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-python:mx9-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-rtsp-server:mx9-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gstreamer1.0-vaapi:mx9-nxp-bsp ??= "1.22.5.imx"
PREFERRED_VERSION_gst-devtools:mx8-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-libav:mx8-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-ugly:mx8-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-python:mx8-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-rtsp-server:mx8-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-vaapi:mx8-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gst-devtools:mx9-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-libav:mx9-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-plugins-ugly:mx9-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-python:mx9-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-rtsp-server:mx9-nxp-bsp ??= "1.24.0.imx"
PREFERRED_VERSION_gstreamer1.0-vaapi:mx9-nxp-bsp ??= "1.24.0.imx"

# GStreamer downgrade ffmpeg
PREFERRED_VERSION_ffmpeg:mx8-nxp-bsp ??= "4.4.1"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770 \
file://ext/libav/gstav.h;beginline=1;endline=18;md5=a752c35267d8276fd9ca3db6994fca9c \
"

SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.22.5.tar.xz"
SRC_URI[sha256sum] = "8583f0c1f4fcb01eed11fa1e3c21126543a8bd739ed4fc1db31f756a5ab01d9a"
SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${@get_gst_ver('${PV}')}.tar.xz"
SRC_URI[sha256sum] = "ab775d5b9a7c84176b29822b68c7a34731280039a20b7db5eb639eddd1466178"

S = "${WORKDIR}/gst-libav-1.22.5"
S = "${WORKDIR}/gst-libav-${@get_gst_ver('${PV}')}"

DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base ffmpeg"

Expand All @@ -24,5 +24,11 @@ EXTRA_OEMESON += " \
-Dtests=disabled \
"

# Drop .imx from PV
def get_gst_ver(v):
return oe.utils.trim_version(v, 3)

FILES:${PN} += "${libdir}/gstreamer-1.0/*.so"
FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"

COMPATIBLE_MACHINE = "(imx-nxp-bsp)"

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -184,11 +184,13 @@ DEPENDS:append:imxgpu2d = " virtual/libg2d"

SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \
file://0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch \
file://0002-avoid-including-sys-poll.h-directly.patch"
file://0002-avoid-including-sys-poll.h-directly.patch \
file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \
"
SRC_URI:prepend = "${GST1.0-PLUGINS-BAD_SRC};branch=${SRCBRANCH} "
GST1.0-PLUGINS-BAD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-bad.git;protocol=https"
SRCBRANCH = "MM_04.08.03_2312_L6.6.y"
SRCREV = "9de821c50b4dd7af2407d9c3d078020704510a20"
SRCBRANCH = "MM_04.09.00_2405_L6.6.y"
SRCREV = "869cef4efbc004c795392d274e617f2dfa71ac98"

S = "${WORKDIR}/git"

Expand Down Expand Up @@ -222,8 +224,11 @@ EXTRA_OEMESON += " \
-Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \
"

COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
EXTRA_OEMESON:remove = " \
-Dkate=disabled \
"

COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
# it uses nested functions sadly, in ext/wayland/gstwaylandsink.c for GST_ELEMENT_REGISTER_DEFINE
#
TOOLCHAIN = "gcc"
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,5 @@ PACKAGECONFIG_GL:use-mainline-bsp = \
# does not depend on the viv-fb feature. It used to, but that was actually a bug
# which was fixed in GStreamer 1.22.5. Since then, the direct texture support is
# detected by Meson by checking for direct texture symbols like "glTexDirectVIV".)
PACKAGECONFIG_GL:append:mx6-nxp-bsp = " viv-fb "
PACKAGECONFIG_GL:append:mx7ulp-nxp-bsp = " viv-fb "
PACKAGECONFIG_GL:imxgpu2d:append:mx6-nxp-bsp = " viv-fb "
PACKAGECONFIG_GL:imxgpu2d:append:mx7-nxp-bsp = " viv-fb "
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this not works, the append needs to be the first override in the list. Can you please verify the PACKAGECONFIG_GL on any of the referred machines ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is necessary, these are appending to the assignments on lines 1-4.

Perhaps it could be clearer by dropping the append and adding a variable?

PACKAGECONFIG_GL:imxgpu2d = " \
    ${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)} \
    ${PACKAGECONFIG_GL_VIV} \
"
PACKAGECONFIG_GL:imxgpu3d = " \
    ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)} \
    ${PACKAGECONFIG_GL_VIV} \
"
PACKAGECONFIG_GL:use-mainline-bsp = \
    "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl gbm', '', d)}"

# The i.MX8 uses KMS instead of the Vivante specific framebuffer API.
# The i.MX7 does not have a GPU, except for ULP.
# This leaves the i.MX6 - with the vendor BSP - as the remaining use case for viv-fb.
#
# (Note that viv-fb is about the _windowing system_. Vivante direct texture support
# does not depend on the viv-fb feature. It used to, but that was actually a bug
# which was fixed in GStreamer 1.22.5. Since then, the direct texture support is
# detected by Meson by checking for direct texture symbols like "glTexDirectVIV".)
PACKAGECONFIG_GL_VIV             = ""
PACKAGECONFIG_GL_VIV:mx6-nxp-bsp = " viv-fb "
PACKAGECONFIG_GL_VIV:mx7-nxp-bsp = " viv-fb "

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My concern is just about the append positions, I think it should be

-PACKAGECONFIG_GL:imxgpu2d:append:mx6-nxp-bsp = " viv-fb "
-PACKAGECONFIG_GL:imxgpu2d:append:mx7-nxp-bsp = " viv-fb "
+PACKAGECONFIG_GL:append:imxgpu2d:mx6-nxp-bsp = " viv-fb "
+PACKAGECONFIG_GL:append:imxgpu2d:mx7-nxp-bsp = " viv-fb "

but have tested locally and it works in the two cases. Sorry for the noise

Original file line number Diff line number Diff line change
Expand Up @@ -116,10 +116,10 @@ SRC_URI:remove = " \
file://0003-viv-fb-Make-sure-config.h-is-included.patch \
file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch"
SRC_URI:prepend = "${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} "
SRC_URI:append = " file://0001-gstallocator-Fix-typcasts.patch"

GST1.0-PLUGINS-BASE_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-base.git;protocol=https"
SRCBRANCH = "MM_04.08.03_2312_L6.6.y"
SRCREV = "c4333767ea122c182ba4e14cababe8dbe2a1b882"
SRCBRANCH = "MM_04.09.00_2405_L6.6.y"
SRCREV = "1c9913d7ce81c43cbf756158a35f61dbeee19ea3"

S = "${WORKDIR}/git"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -111,8 +111,8 @@ SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plu

SRC_URI:prepend = "${GST1.0-PLUGINS-GOOD_SRC};branch=${SRCBRANCH} "
GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-good.git;protocol=https"
SRCBRANCH = "MM_04.08.03_2312_L6.6.y"
SRCREV = "d361360510c97dc23abbfcdd22dff8214890527d"
SRCBRANCH = "MM_04.09.00_2405_L6.6.y"
SRCREV = "50535da48c564bd3a46b2e39e0a3a97cf7e86df3"

# set 32bit compile timer for 32-bit platform
GLIBC_64BIT_TIME_FLAGS:mx6-nxp-bsp = ""
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ RDEPENDS:gstreamer1.0-plugins-imx-imxvpu = "gstreamer1.0-plugins-bad-videoparser
PV .= "+git${SRCPV}"

SRCBRANCH ?= "master"
SRCREV = "cb3cd45676e808b222ac573e8a118f44fd70c288"
SRCREV = "ce4f86e60f12c56574f727f3317fa8aa30a11387"
SRC_URI = "git://github.com/Freescale/gstreamer-imx.git;branch=${SRCBRANCH};protocol=https"

S = "${WORKDIR}/git"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,22 +12,21 @@ LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
LICENSE_FLAGS = "commercial"

SRC_URI = " \
https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.22.5.tar.xz \
https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${@get_gst_ver("${PV}")}.tar.xz \
"
SRC_URI[sha256sum] = "2680473b218158f18467cac3e1c50291b7ff4e0710dd350a59eaacbc29c09a54"
SRC_URI[sha256sum] = "c5d1cbdf71ab0c675bca236f70edfa1feb3f813fd4bfff563308f466d8805ca5"

S = "${WORKDIR}/gst-plugins-ugly-1.22.5"
S = "${WORKDIR}/gst-plugins-ugly-${@get_gst_ver("${PV}")}"

DEPENDS += "gstreamer1.0-plugins-base"

GST_PLUGIN_SET_HAS_EXAMPLES = "0"

PACKAGECONFIG ??= " \
${GSTREAMER_ORC} \
a52dec mpeg2dec \
"

PACKAGECONFIG[amrnb] = "-Damrnb=enabled,-Damrnb=disabled,opencore-amr"
PACKAGECONFIG[amrwb] = "-Damrwbdec=enabled,-Damrwbdec=disabled,opencore-amr"
PACKAGECONFIG[a52dec] = "-Da52dec=enabled,-Da52dec=disabled,liba52"
PACKAGECONFIG[cdio] = "-Dcdio=enabled,-Dcdio=disabled,libcdio"
PACKAGECONFIG[dvdread] = "-Ddvdread=enabled,-Ddvdread=disabled,libdvdread"
Expand All @@ -41,5 +40,10 @@ EXTRA_OEMESON += " \
-Dsidplay=disabled \
"

FILES:${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs"
# Drop .imx from PV
def get_gst_ver(v):
return oe.utils.trim_version(v, 3)

FILES:${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs"

COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
From 8d7e2eaed10e2928358805f613223a6a149790d6 Mon Sep 17 00:00:00 2001
From: Hiago De Franco <hiago.franco@toradex.com>
Date: Wed, 31 Jul 2024 11:51:06 -0300
Subject: [PATCH] meson.build: Fix missing python_opt

'python_opt' was not declared earlier, giving the following build error:

| Message: python_abi_flags =
|
| ../gst-python-1.24.0/meson.build:84:16: ERROR: Unknown variable "python_opt".

Remove it and keep the error message.

Upstream-Status: Inappropriate [oe specific]

The patch already exists upstream, but this is related to another fix [1]
not suitable for OE. Moreover, the backport does not apply since
the patch was added to the gstreamer monorepo.

[1] https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6734?

Signed-off-by: Hiago De Franco <hiago.franco@toradex.com>
---
meson.build | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/meson.build b/meson.build
index f240b6fd8aca..53f7a43702c7 100644
--- a/meson.build
+++ b/meson.build
@@ -80,12 +80,7 @@ foreach loc: pylib_locs
endforeach
endforeach
if pylib_fname == ''
- error_msg = 'Could not find python library to load'
- if python_opt.enabled()
- error(error_msg)
- else
- message(error_msg)
- endif
+ message('Could not find python library to load')
endif

pygi_override_dir = get_option('pygi-overrides-dir')
--
2.39.2

Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,18 @@ SECTION = "multimedia"
LICENSE = "LGPL-2.1-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740"

SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-1.22.5.tar.xz"
SRC_URI[sha256sum] = "bf05232415cf6018142ae51dd3b897bb73432687b5ce1786bf46edc6298ce5b0"
SRC_URI = "\
https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${@get_gst_ver("${PV}")}.tar.xz \
file://0001-meson.build-Fix-missing-python_opt.patch \
"
SRC_URI[sha256sum] = "041c2255c1ea9936c777dcb08a36ecaa6a24a69a12fc46ef53f1530d46c59f9d"

DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
RDEPENDS:${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"

PNREAL = "gst-python"

S = "${WORKDIR}/${PNREAL}-1.22.5"
S = "${WORKDIR}/${PNREAL}-${@get_gst_ver('${PV}')}"

EXTRA_OEMESON += "\
-Dtests=disabled \
Expand All @@ -25,6 +28,10 @@ EXTRA_OEMESON += "\

inherit meson pkgconfig setuptools3-base upstream-version-is-even features_check

# Drop .imx from PV
def get_gst_ver(v):
return oe.utils.trim_version(v, 3)

FILES:${PN} += "${libdir}/gstreamer-1.0"

REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base"

PNREAL = "gst-rtsp-server"

SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-1.22.5.tar.xz"
SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${@get_gst_ver("${PV}")}.tar.xz"

SRC_URI[sha256sum] = "f343eb54964ebd4d8c071be5eecad586f28feb0156e036e06b148d0e7febb1c0"
SRC_URI[sha256sum] = "5b0fa6b12ba95b1d336a4b274cbe19e982aa3e6819f1d97bfd8e0102b103ed9b"

S = "${WORKDIR}/${PNREAL}-1.22.5"
S = "${WORKDIR}/${PNREAL}-${@get_gst_ver("${PV}")}"

inherit meson pkgconfig upstream-version-is-even gobject-introspection

Expand All @@ -25,7 +25,14 @@ EXTRA_OEMESON += " \
GIR_MESON_ENABLE_FLAG = "enabled"
GIR_MESON_DISABLE_FLAG = "disabled"

# Drop .imx from PV
def get_gst_ver(v):
return oe.utils.trim_version(v, 3)

# Starting with 1.8.0 gst-rtsp-server includes dependency-less plugins as well
require gstreamer1.0-plugins-packaging.inc

CVE_PRODUCT += "gst-rtsp-server"

COMPATIBLE_MACHINE = "(imx-nxp-bsp)"

Loading
Loading