Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package gstreamer-plugins-libav for openSUSE:Factory checked in at 2023-04-15 22:32:15 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gstreamer-plugins-libav (Old) and /work/SRC/openSUSE:Factory/.gstreamer-plugins-libav.new.19717 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gstreamer-plugins-libav" Sat Apr 15 22:32:15 2023 rev:40 rq:1079383 version:1.22.2 Changes: -------- --- /work/SRC/openSUSE:Factory/gstreamer-plugins-libav/gstreamer-plugins-libav.changes 2023-03-12 16:22:36.784333321 +0100 +++ /work/SRC/openSUSE:Factory/.gstreamer-plugins-libav.new.19717/gstreamer-plugins-libav.changes 2023-04-15 22:32:20.581259574 +0200 @@ -1,0 +2,9 @@ +Wed Apr 12 13:46:48 UTC 2023 - Bjørn Lie <bjorn....@gmail.com> + +- Update to version 1.22.2: + + avdec_h264 pipeline freeze with FFmpeg6 + + avdeinterlace, avmux: fix element reference leak + + avviddec: Drop decoder stream lock when calling send_packet +- Rebase patch. + +------------------------------------------------------------------- Old: ---- gst-libav-1.22.1.tar.xz New: ---- gst-libav-1.22.2.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gstreamer-plugins-libav.spec ++++++ --- /var/tmp/diff_new_pack.mO7jgb/_old 2023-04-15 22:32:20.985261905 +0200 +++ /var/tmp/diff_new_pack.mO7jgb/_new 2023-04-15 22:32:20.993261951 +0200 @@ -19,7 +19,7 @@ %define gst_branch 1.0 Name: gstreamer-plugins-libav -Version: 1.22.1 +Version: 1.22.2 Release: 0 Summary: A ffmpeg/libav plugin for GStreamer License: LGPL-2.1-or-later ++++++ gst-libav-1.22.1.tar.xz -> gst-libav-1.22.2.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.22.1/ChangeLog new/gst-libav-1.22.2/ChangeLog --- old/gst-libav-1.22.1/ChangeLog 2023-03-04 14:48:03.625562400 +0100 +++ new/gst-libav-1.22.2/ChangeLog 2023-04-11 18:33:53.555886300 +0200 @@ -1,3 +1,43 @@ +=== release 1.22.2 === + +2023-04-11 17:29:28 +0100 Tim-Philipp Müller <t...@centricular.com> + + * NEWS: + * RELEASE: + * gst-libav.doap: + * meson.build: + Release 1.22.2 + +2023-04-10 18:06:17 +0100 Tim-Philipp Müller <t...@centricular.com> + + * ext/libav/gstavmux.c: + avmux: fix element leak + Fixes #2473 + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4385> + +2023-04-10 17:59:21 +0100 Tim-Philipp Müller <t...@centricular.com> + + * ext/libav/gstavdeinterlace.c: + avdeinterlace: fix element leak + Fixes #2473 + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4385> + +2023-03-14 14:27:39 -0400 Nicolas Dufresne <nicolas.dufre...@collabora.com> + + * ext/libav/gstavviddec.c: + avviddec: Drop decoder stream lock when calling send_packet + This is already done for every other calls to send_packet. The deadlock occures + since FFMPeg 6.0. The decoder tries to get a buffer from a thread during + the draining process, and blocks trying to get the video decoder stream lock + already heald by the drain function. + Fixes #2383 + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4187> + +2023-03-04 16:13:04 +0000 Tim-Philipp Müller <t...@centricular.com> + + * meson.build: + Back to development + === release 1.22.1 === 2023-03-04 13:42:32 +0000 Tim-Philipp Müller <t...@centricular.com> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.22.1/NEWS new/gst-libav-1.22.2/NEWS --- old/gst-libav-1.22.1/NEWS 2023-03-04 14:42:32.000000000 +0100 +++ new/gst-libav-1.22.2/NEWS 2023-04-11 18:29:28.000000000 +0200 @@ -2,13 +2,13 @@ GStreamer 1.22.0 was originally released on 23 January 2023. -The latest bug-fix release in the stable 1.22 series is 1.22.1 and was -released on 04 March 2023. +The latest bug-fix release in the stable 1.22 series is 1.22.2 and was +released on 11 April 2023. See https://gstreamer.freedesktop.org/releases/1.22/ for the latest version of this document. -Last updated: Monday 04 March 2023, 13:00 UTC (log) +Last updated: Tuesday 11 April 2023, 16:45 UTC (log) Introduction @@ -1454,6 +1454,200 @@ - List of Merge Requests applied in 1.22.1 - List of Issues fixed in 1.22.1 +1.22.2 + +The second 1.22 bug-fix release (1.22.2) was released on 11 April 2023. + +This release only contains bugfixes and it should be safe to update from +1.22.x. + +Highlighted bugfixes in 1.22.2 + +- avdec_h264: fix decoder deadlocks with FFmpeg 6.0 +- rtspsrc: fix regression with URI protocols in OPTIONS requests for + RTSP over TLS +- rtspsrc: improved control url handling compatibility for broken + servers +- decklink: fix 10 bit RGB (r210) format auto detection for capture + and fix playout if video caps are configured before audio caps +- d3d11videosink: Fix tearing in case of fullscreen mode +- playbin: fix deadlock when stopping stream with subtitles visible + (even more) +- typefinding: fix regression not detecting application/dash+xml in + some corner cases +- osxvideosink: fix broken aspect ratio and frame drawing region +- decodebin3, parsebin: Improve elementary stream handling when + decoders are not present and fix hang when removing a failing stream +- urisourcebin: Propagate sticky events from parsebin, so that the + STREAM_START event with the GstStream info is always available when + pads get exposed +- v4l2: Add support for YVU420M format; mark JPEG content as parsed +- h264decoder, h265decoder: DPB bumping process and latency reporting + fixes +- Opus: Fix reading of extended channel config in MPEG-TS and fix + missing sample rate when remuxing from RTP to Matroska +- zxing: add support for building against zxing-c++ 2.0 +- cerbero: Fix packaging of Rust plugins on Android; fix modern Gentoo + distro detection +- various bug fixes, memory leak fixes, and other stability and + reliability improvements + +gstreamer + +- datetime: Return G_MAXFLOAT instead of G_MAXDOUBLE for no timezone + offset +- inputselector: Wake up streaming thread before PLAYING_TO_PAUSED + transition +- tools: fix potential crash when passing command-line options on + Windows + +gst-plugins-base + +- alsasink: Fix for being stuck in stop_streaming_threads state +- decodebin3: fix hang when removing a failing stream +- gl: wayland: cleanup on close +- parsebin: Improve elementary stream handling +- playbin: fix deadlock when stopping stream with subtitles visible + even more +- sdp: Skip source-specific caps fields when creating an SDP media + from caps +- urisourcebin: Propagate sticky events from parsebin +- urisourcebin: Activate pad before transferring sticky events +- typefinding: fix failure to recognize application/dash+xml in some + cases + +gst-plugins-good + +- osxvideosink: fix broken aspect ratio and frame drawing region +- qtdemux: Fix seek adjustment with SNAP_AFTER flag +- rtpopusdepay, matroskamux: Fix invalid rate while muxing Opus in + Matroska +- rtpmanager: twcc: Fix duplicate packet handling +- rtsp: url: fix incorrect request URI scheme for TLS transport + methods (regression) +- rtspsrc: Consider â451: Parameter Not Understoodâ when handling + broken control urls +- rtspsrc: fix behavior change with URI protocols in OPTIONS requests +- rtspsrc: Skip PTs with caps incompatible to the global caps +- rtpjpegdepay: fix logic error when checking if an end of image (EOI) + tag is present +- v4l2: Add support for YVU420M format +- v4l2: mark JPEG as parsed + +gst-plugins-bad + +- cea708overlay: fix HCR interpretation +- d3d11bufferpool: Fix invalid access in debug print loop +- d3d11compositor: Fix composition error on release_pad() +- d3d11converter: Fix conversion backend selection +- d3d11videosink: Fix tearing in case of fullscreen mode - + d3d11bufferpool: Fix invalid access in debug print loop +- d3d11window: fix memory leak +- decklink: fix 10 bit RGB (r210) format auto detection +- decklinkaudiosink: Fix playback when video caps is configured before + audio +- decklinkvideosrc: RGB 4:4:4 doesnât work after GStreamer upgrade + (regression) +- decklinkvideosrc: unable to show HDMI stream that Blackmagicâs Media + Express is able to see +- debugqroverlay: fix string leak +- gtkwaylandsink: Destroy GstWlWindow when parent GtkWindow is + destroyed +- gtkwaylandsink: Fix crash when rendering after the window is closed +- ksvideo, directshow: Fix reference leaks in device providers +- h264decoder: Fix DPB bumping process +- h264decoder, h265decoder: Latency reporting related fixes +- h264parse: Validate VUI framerate +- jpegparse: reset parse state when the SOI is not the first marker +- nvencoder: Fix CQP option setting +- nvh264encoder: Fix template caps to include progressive mode as well +- openjpegdec: allow multithread decoding only in subframe mode +- tsdemux: Fix reading of extended Opus channel configuration +- vulkan: fix validation layer issues +- vulkanoverlaycompositor: fix potential use after free +- vulkanswapper: correctly handle force-aspect-ratio=false +- wasapi2: Fix potential crash on device activation failure +- webrtc: Fix segfault traversing ice transports +- webrtc: patch leak caused by early return +- zxing: add support for zxing-c++ 2.0 + +gst-plugins-ugly + +- No changes + +gst-libav + +- avdec_h264 pipeline freeze with FFmpeg6 +- avdeinterlace, avmux: fix element reference leak +- avviddec: Drop decoder stream lock when calling send_packet + +gst-rtsp-server + +- rtsp-server: fix deadlock on shutdown with non-live pipeline if + media isnât playing/prerolled yet and eos-shutdown is enabled for + the media + +gstreamer-vaapi + +- No changes + +gstreamer-sharp + +- No changes + +gst-omx + +- No changes + +gst-python + +- No changes + +gst-editing-services + +- No changes + +gst-validate + gst-integration-testsuites + +- No changes + +gst-examples + +- No changes + +Development build environment + +- git: prevent CRLF line ending conversion for patches to fix pango + subproject patching issues on Windows + +Cerbero build tool and packaging changes in 1.22.2 + +- build: retry rust build on SIGBUS errors too +- Fix packaging of rust plugins on Android +- Modern Gentoo distro adaptation +- sbc: update to 2.0 +- speex: update to 1.2.1 + +Contributors to 1.22.2 + +Adrien De Coninck, Albert Sjölund, Alexande B, Antonio Rojas, Arun +Raghavan, Bart Van Severen, Carlo Cabrera, Colin Kinloch, Edward Hervey, +Guillaume Desmottes, Haihua Hu, He Junyan, Ilie Halip, Jordan Petridis, +Josef KoláÅ, Lily Foster, Mathieu Duponchelle, Matt Feury, Matthew +Waters, Maxim P. Dementyev, Michael Tretter, Nicolas Dufresne, Nirbheek +Chauhan, Piotr BrzeziÅski, Robert Rosengren, Rouven Czerwinski, +Sebastian Dröge, Seungha Yang, Shengqi Yu, Stéphane Cerveau, Talha Khan, +Thibault Saunier, Tim-Philipp Müller, VÃctor Manuel Jáquez Leal, Vivia +Nikolaidou, Wang Chuan, Wojciech Kapsa, + +⦠and many others who have contributed bug reports, translations, sent +suggestions or helped testing. Thank you all! + +List of merge requests and issues fixed in 1.22.2 + +- List of Merge Requests applied in 1.22.2 +- List of Issues fixed in 1.22.2 + Schedule for 1.24 Our next major feature release will be 1.24, and 1.23 will be the diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.22.1/RELEASE new/gst-libav-1.22.2/RELEASE --- old/gst-libav-1.22.1/RELEASE 2023-03-04 14:42:32.000000000 +0100 +++ new/gst-libav-1.22.2/RELEASE 2023-04-11 18:29:28.000000000 +0200 @@ -1,4 +1,4 @@ -This is GStreamer gst-libav 1.22.1. +This is GStreamer gst-libav 1.22.2. The GStreamer team is thrilled to announce a new major feature release of your favourite cross-platform multimedia framework! diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.22.1/ext/libav/gstavdeinterlace.c new/gst-libav-1.22.2/ext/libav/gstavdeinterlace.c --- old/gst-libav-1.22.1/ext/libav/gstavdeinterlace.c 2023-03-04 14:42:32.000000000 +0100 +++ new/gst-libav-1.22.2/ext/libav/gstavdeinterlace.c 2023-04-11 18:29:28.000000000 +0200 @@ -196,10 +196,10 @@ } static gboolean -gst_ffmpegdeinterlace_sink_setcaps (GstPad * pad, GstCaps * caps) +gst_ffmpegdeinterlace_sink_setcaps (GstPad * pad, GstObject * parent, + GstCaps * caps) { - GstFFMpegDeinterlace *deinterlace = - GST_FFMPEGDEINTERLACE (gst_pad_get_parent (pad)); + GstFFMpegDeinterlace *deinterlace = GST_FFMPEGDEINTERLACE (parent); GstStructure *structure = gst_caps_get_structure (caps, 0); const gchar *imode; AVCodecContext *ctx; @@ -260,7 +260,7 @@ GstCaps *caps; gst_event_parse_caps (event, &caps); - ret = gst_ffmpegdeinterlace_sink_setcaps (pad, caps); + ret = gst_ffmpegdeinterlace_sink_setcaps (pad, parent, caps); gst_event_unref (event); break; } @@ -414,7 +414,7 @@ deinterlace->reconfigure = FALSE; GST_OBJECT_UNLOCK (deinterlace); if ((caps = gst_pad_get_current_caps (deinterlace->srcpad))) { - gst_ffmpegdeinterlace_sink_setcaps (deinterlace->sinkpad, caps); + gst_ffmpegdeinterlace_sink_setcaps (deinterlace->sinkpad, parent, caps); gst_caps_unref (caps); } } else { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.22.1/ext/libav/gstavmux.c new/gst-libav-1.22.2/ext/libav/gstavmux.c --- old/gst-libav-1.22.1/ext/libav/gstavmux.c 2023-03-04 14:42:32.000000000 +0100 +++ new/gst-libav-1.22.2/ext/libav/gstavmux.c 2023-04-11 18:29:28.000000000 +0200 @@ -103,7 +103,8 @@ GstFFMpegMuxClass * g_class); static void gst_ffmpegmux_finalize (GObject * object); -static gboolean gst_ffmpegmux_setcaps (GstPad * pad, GstCaps * caps); +static gboolean gst_ffmpegmux_setcaps (GstPad * pad, GstObject * parent, + GstCaps * caps); static GstPad *gst_ffmpegmux_request_new_pad (GstElement * element, GstPadTemplate * templ, const gchar * name, const GstCaps * caps); static GstFlowReturn gst_ffmpegmux_collected (GstCollectPads * pads, @@ -460,19 +461,10 @@ return pad; } -/** - * gst_ffmpegmux_setcaps - * @pad: #GstPad - * @caps: New caps. - * - * Set caps to pad. - * - * Returns: #TRUE on success. - */ static gboolean -gst_ffmpegmux_setcaps (GstPad * pad, GstCaps * caps) +gst_ffmpegmux_setcaps (GstPad * pad, GstObject * parent, GstCaps * caps) { - GstFFMpegMux *ffmpegmux = (GstFFMpegMux *) (gst_pad_get_parent (pad)); + GstFFMpegMux *ffmpegmux = (GstFFMpegMux *) parent; GstFFMpegMuxPad *collect_pad; AVStream *st; AVCodecContext tmp; @@ -526,7 +518,7 @@ case GST_EVENT_CAPS:{ GstCaps *caps; gst_event_parse_caps (event, &caps); - if (!(res = gst_ffmpegmux_setcaps (pad, caps))) + if (!(res = gst_ffmpegmux_setcaps (pad, parent, caps))) goto beach; break; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.22.1/ext/libav/gstavviddec.c new/gst-libav-1.22.2/ext/libav/gstavviddec.c --- old/gst-libav-1.22.1/ext/libav/gstavviddec.c 2023-03-04 14:42:32.000000000 +0100 +++ new/gst-libav-1.22.2/ext/libav/gstavviddec.c 2023-04-11 18:29:28.000000000 +0200 @@ -2042,8 +2042,12 @@ if (!ffmpegdec->opened) return GST_FLOW_OK; - if (avcodec_send_packet (ffmpegdec->context, NULL)) + GST_VIDEO_DECODER_STREAM_UNLOCK (ffmpegdec); + if (avcodec_send_packet (ffmpegdec->context, NULL)) { + GST_VIDEO_DECODER_STREAM_LOCK (ffmpegdec); goto send_packet_failed; + } + GST_VIDEO_DECODER_STREAM_LOCK (ffmpegdec); do { got_frame = gst_ffmpegviddec_frame (ffmpegdec, NULL, &ret); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.22.1/gst-libav.doap new/gst-libav-1.22.2/gst-libav.doap --- old/gst-libav-1.22.1/gst-libav.doap 2023-03-04 14:42:32.000000000 +0100 +++ new/gst-libav-1.22.2/gst-libav.doap 2023-04-11 18:29:28.000000000 +0200 @@ -34,6 +34,16 @@ <release> <Version> + <revision>1.22.2</revision> + <branch>1.22</branch> + <name></name> + <created>2023-04-11</created> + <file-release rdf:resource="https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.22.2.tar.xz" /> + </Version> + </release> + + <release> + <Version> <revision>1.22.1</revision> <branch>1.22</branch> <name></name> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.22.1/meson.build new/gst-libav-1.22.2/meson.build --- old/gst-libav-1.22.1/meson.build 2023-03-04 14:42:32.000000000 +0100 +++ new/gst-libav-1.22.2/meson.build 2023-04-11 18:29:28.000000000 +0200 @@ -1,5 +1,5 @@ project('gst-libav', 'c', - version : '1.22.1', + version : '1.22.2', meson_version : '>= 0.62', default_options : [ 'warning_level=1', 'buildtype=debugoptimized' ]) ++++++ reduce-required-meson.patch ++++++ --- /var/tmp/diff_new_pack.mO7jgb/_old 2023-04-15 22:32:21.265263521 +0200 +++ /var/tmp/diff_new_pack.mO7jgb/_new 2023-04-15 22:32:21.269263543 +0200 @@ -1,10 +1,10 @@ Index: gst-libav-1.22.1/meson.build =================================================================== ---- gst-libav-1.22.1.orig/meson.build -+++ gst-libav-1.22.1/meson.build +--- gst-libav-1.22.2.orig/meson.build ++++ gst-libav-1.22.2/meson.build @@ -1,6 +1,6 @@ project('gst-libav', 'c', - version : '1.22.1', + version : '1.22.2', - meson_version : '>= 0.62', + meson_version : '>= 0.61', default_options : [ 'warning_level=1',