diff --git a/gst-plugins-base-1.24.6.tar.xz b/gst-plugins-base-1.24.6.tar.xz deleted file mode 100644 index 1dda4ad..0000000 --- a/gst-plugins-base-1.24.6.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cf52b535a0ce7ec974756891818f34f06317c2e136abb24149e18c23ecc229b5 -size 2436400 diff --git a/gst-plugins-base-1.24.7.tar.xz b/gst-plugins-base-1.24.7.tar.xz new file mode 100644 index 0000000..a7047af --- /dev/null +++ b/gst-plugins-base-1.24.7.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1528d1746a393299f5ac17ebf13a32a660202f1e29d0a852a2250f6a059a2fda +size 2438084 diff --git a/gst-plugins-base-decodebin3-collection-identity-check.patch b/gst-plugins-base-decodebin3-collection-identity-check.patch new file mode 100644 index 0000000..b4ddead --- /dev/null +++ b/gst-plugins-base-decodebin3-collection-identity-check.patch @@ -0,0 +1,67 @@ +From 378e78f285a3f14c0c53473948090464fa48147b Mon Sep 17 00:00:00 2001 +From: Edward Hervey +Date: Wed, 21 Aug 2024 16:29:03 +0200 +Subject: [PATCH] decodebin3: Fix collection identity check + +Collections can be auto-generated from upstream and yet have exactly the same +streams in it. + +Therefore do a more in-depth check for equality. + +Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3742 +--- + .../gst/playback/gstdecodebin3.c | 26 ++++++++++++++++++- + 1 file changed, 25 insertions(+), 1 deletion(-) + +diff --git a/gst/playback/gstdecodebin3.c b/gst/playback/gstdecodebin3.c +index 56ef496468ac..78b79c776ba6 100644 +--- a/gst/playback/gstdecodebin3.c ++++ b/gst/playback/gstdecodebin3.c +@@ -2609,6 +2609,29 @@ db_collection_new (GstStreamCollection * collection) + return db_collection; + } + ++static gboolean ++collections_are_identical (GstStreamCollection * collection, ++ GstStreamCollection * previous) ++{ ++ guint i; ++ ++ if (collection == previous) ++ return TRUE; ++ ++ if (gst_stream_collection_get_size (collection) != ++ gst_stream_collection_get_size (previous)) ++ return FALSE; ++ ++ for (i = 0; i < gst_stream_collection_get_size (previous); i++) { ++ GstStream *stream = gst_stream_collection_get_stream (previous, i); ++ const gchar *sid = gst_stream_get_stream_id (stream); ++ if (!stream_in_collection (collection, (gchar *) sid)) ++ return FALSE; ++ } ++ ++ return TRUE; ++} ++ + /** handle_stream_collection_locked: + * @dbin: + * @collection: (transfer none): The new collection for @input. Can be %NULL. +@@ -2683,12 +2706,13 @@ handle_stream_collection_locked (GstDecodebin3 * dbin, + if (dbin->input_collection) { + GstStreamCollection *previous = dbin->input_collection->collection; + +- if (collection == previous) { ++ if (collections_are_identical (collection, previous)) { + GST_DEBUG_OBJECT (dbin, "Collection didn't change"); + gst_object_unref (collection); + SELECTION_UNLOCK (dbin); + return NULL; + } ++ + /* Check if this collection is an update of the previous one */ + if (gst_stream_collection_get_size (collection) > + gst_stream_collection_get_size (previous)) { +-- +GitLab + diff --git a/gstreamer-plugins-base.changes b/gstreamer-plugins-base.changes index 611c2e0..433b05f 100644 --- a/gstreamer-plugins-base.changes +++ b/gstreamer-plugins-base.changes @@ -1,3 +1,23 @@ +------------------------------------------------------------------- +Fri Aug 23 07:15:20 UTC 2024 - Bjørn Lie + +- Update to version 1.24.7: + + pbutils: descriptions: use subsampling factor to get YUV + subsampling + + rtspconnection: Handle invalid argument properly + + urisourcebin: + - Actually drop EOS on old-school pad switch + - Don't hold lock when emitting about-to-finish + + gst-launch deadlock with two playbin3s + + xvimagesink: Fix crash in pool on error + +------------------------------------------------------------------- +Wed Aug 21 15:43:45 UTC 2024 - Jonas Kvinge + +- Add gst-plugins-base-decodebin3-collection-identity-check.patch: + - Fixes a assertion causing crash on track change. Upstream bug: + https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3742 + ------------------------------------------------------------------- Wed Jul 31 13:41:59 UTC 2024 - Dominique Leuenberger diff --git a/gstreamer-plugins-base.spec b/gstreamer-plugins-base.spec index 1740f0a..c4cc441 100644 --- a/gstreamer-plugins-base.spec +++ b/gstreamer-plugins-base.spec @@ -20,7 +20,7 @@ %define gst_branch 1.0 %define gstreamer_req_version %(echo %{version} | sed -e "s/+.*//") Name: gstreamer-plugins-base -Version: 1.24.6 +Version: 1.24.7 Release: 0 Summary: GStreamer Streaming-Media Framework Plug-Ins License: GPL-2.0-or-later AND LGPL-2.1-or-later @@ -31,6 +31,7 @@ Source1: gstreamer-plugins-base.appdata.xml Source2: baselibs.conf Patch1: add_wayland_dep_to_tests.patch Patch2: MR-221-video-anc-add-two-new-CEA-608-caption-formats.patch +Patch3: gst-plugins-base-decodebin3-collection-identity-check.patch BuildRequires: Mesa-libGLESv3-devel BuildRequires: cdparanoia-devel