Skip to content

Commit

Permalink
gstreamer: Update 6.6.3-1.0.0 to 6.6.23-2.0.0
Browse files Browse the repository at this point in the history
- Upgrade gstreamer and all related recipes to 1.24.0, syncing with
meta-imx layer.
- Upgrade gstreamer1.0-python to 1.24.5, using the same version used by
current openembedded-core master branch.

Signed-off-by: Hiago De Franco <hiago.franco@toradex.com>
  • Loading branch information
hiagofranco committed Jul 26, 2024
1 parent 5a46df3 commit 2b9db97
Show file tree
Hide file tree
Showing 18 changed files with 153 additions and 300 deletions.
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.5.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.5.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,13 @@ 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)"

LICENSE_FLAGS_ACCEPTED += " commercial "

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.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -116,18 +116,36 @@ 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"

inherit use-imx-headers

# 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:imxgpu2d = \
"${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}"
PACKAGECONFIG_GL:imxgpu3d = \
"${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
PACKAGECONFIG_GL:use-mainline-bsp = \
"${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl gbm', '', d)}"

PACKAGECONFIG:remove = "${PACKAGECONFIG_REMOVE}"
PACKAGECONFIG_REMOVE ?= "jpeg"

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

PACKAGECONFIG:append = " ${PACKAGECONFIG_G2D}"
PACKAGECONFIG_G2D ??= ""
PACKAGECONFIG_G2D:imxgpu2d ??= "g2d"
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,12 @@ 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)"

LICENSE_FLAGS_ACCEPTED += " commercial "
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,15 @@ 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}-1.24.5.tar.xz"
SRC_URI[sha256sum] = "c23570c144e6276efd9e82de2ac0cea46b168a57fb2e436bed96cb285d641bf6"

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 +25,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)"

Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,19 @@ REALPN = "gstreamer-vaapi"
LICENSE = "LGPL-2.1-or-later"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"

SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-1.22.5.tar.xz"
SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-1.24.0.tar.xz"

SRC_URI[sha256sum] = "a9a550267c9584df0e8c70434d30476e8fd0018b733c1c1ee33deaf422bdb24b"
SRC_URI[sha256sum] = "6b1f3b91ca65dedc67dc67a25dc1d1e464f11825a27ab9c7ac7c1bda67f03596"

S = "${WORKDIR}/${REALPN}-1.22.5"
S = "${WORKDIR}/${REALPN}-${@get_gst_ver('${PV}')}"
DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"

inherit meson pkgconfig features_check upstream-version-is-even

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

REQUIRED_DISTRO_FEATURES ?= "opengl"

EXTRA_OEMESON += " \
Expand Down
Loading

0 comments on commit 2b9db97

Please sign in to comment.