commit 78335dbaa11b3ed3eabf678b08d9b9e320f5537d
Author: Leigh Scott <leigh123linux(a)gmail.com>
Date: Mon Jul 18 08:24:05 2022 +0100
Fix rfbz#6354
139.patch | 229 --------------------------------------------------
2074.patch | 45 ++++++++++
gstreamer1-libav.spec | 10 ++-
3 files changed, 52 insertions(+), 232 deletions(-)
---
diff --git a/2074.patch b/2074.patch
new file mode 100644
index 0000000..09865d0
--- /dev/null
+++ b/2074.patch
@@ -0,0 +1,45 @@
+From 530272850d00e29851c938f5c0d771e18e5223ac Mon Sep 17 00:00:00 2001
+From: Edward Hervey <edward(a)centricular.com>
+Date: Tue, 29 Mar 2022 09:36:06 +0200
+Subject: [PATCH] avviddec: Remove vc1/wmv3 override
+
+FFMPEG 5+ doesn't allow overriding the codec anymore (causes a segfault if you
+attempt to do that). But the best part is ... that with the current caps
+implementation in pad template and gst_ffmpeg_caps_to_codecid() we would never
+replace it by anything different than the existing codec id.
+
+Fixes #1054
+
+Part-of:
<
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2074>
+---
+ ext/libav/gstavviddec.c | 7 +------
+ 1 file changed, 1 insertion(+), 6 deletions(-)
+
+diff --git a/ext/libav/gstavviddec.c b/ext/libav/gstavviddec.c
+index f5197fbe143..304dec5dfe1 100644
+--- a/ext/libav/gstavviddec.c
++++ b/ext/libav/gstavviddec.c
+@@ -477,10 +477,6 @@ gst_ffmpegviddec_set_format (GstVideoDecoder * decoder,
+ GST_DEBUG_OBJECT (ffmpegdec, "setcaps called");
+
+ GST_OBJECT_LOCK (ffmpegdec);
+- /* stupid check for VC1 */
+- if ((oclass->in_plugin->id == AV_CODEC_ID_WMV3) ||
+- (oclass->in_plugin->id == AV_CODEC_ID_VC1))
+- oclass->in_plugin->id = gst_ffmpeg_caps_to_codecid (state->caps, NULL);
+
+ /* close old session */
+ if (ffmpegdec->opened) {
+@@ -2553,8 +2549,7 @@ gst_ffmpegviddec_register (GstPlugin * plugin)
+
+ /* (Ronald) MPEG-4 gets a higher priority because it has been well-
+ * tested and by far outperforms divxdec/xviddec - so we prefer it.
+- * msmpeg4v3 same, as it outperforms divxdec for divx3 playback.
+- * VC1/WMV3 are not working and thus unpreferred for now. */
++ * msmpeg4v3 same, as it outperforms divxdec for divx3 playback. */
+ switch (in_plugin->id) {
+ case AV_CODEC_ID_MPEG1VIDEO:
+ case AV_CODEC_ID_MPEG2VIDEO:
+--
+GitLab
+
diff --git a/gstreamer1-libav.spec b/gstreamer1-libav.spec
index 9531894..d82d20b 100644
--- a/gstreamer1-libav.spec
+++ b/gstreamer1-libav.spec
@@ -4,12 +4,12 @@
Name: gstreamer1-libav
Epoch: 1
Version: 1.20.0
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: GStreamer 1.0 libav-based plug-ins
License: LGPLv2+
URL:
https://gstreamer.freedesktop.org/
Source0: %{url}/src/gst-libav/gst-libav-%{version}.tar.xz
-Patch0:
https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/139.p...
+Patch0:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2074....
BuildRequires: gcc-c++
BuildRequires: meson
@@ -47,7 +47,8 @@ plug-in.
%prep
-%setup -n gst-libav-%{version}
+%setup -q -n gst-libav-%{version}
+%patch0 -p1
%build
%meson \
@@ -73,6 +74,9 @@ plug-in.
%endif
%changelog
+* Mon Jul 18 2022 Leigh Scott <leigh123linux(a)gmail.com> - 1:1.20.0-2
+- Fix rfbz#6354
+
* Sun Feb 06 2022 Sérgio Basto <sergio(a)serjux.com> - 1:1.20.0-1
- Update gstreamer1-libav to 1.20.0