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 2021-04-10 15:26:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gstreamer-plugins-libav (Old)
 and      /work/SRC/openSUSE:Factory/.gstreamer-plugins-libav.new.2401 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gstreamer-plugins-libav"

Sat Apr 10 15:26:35 2021 rev:25 rq:883606 version:1.18.4

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/gstreamer-plugins-libav/gstreamer-plugins-libav.changes
  2021-01-20 18:24:42.403365627 +0100
+++ 
/work/SRC/openSUSE:Factory/.gstreamer-plugins-libav.new.2401/gstreamer-plugins-libav.changes
        2021-04-10 15:27:23.738379749 +0200
@@ -1,0 +2,8 @@
+Tue Mar 30 09:07:45 UTC 2021 - Antonio Larrosa <alarr...@suse.com>
+
+- Update to version 1.18.4:
+  + h264 encoder: append encoder exposure to aud
+  + postproc: Fix a problem of propose_allocation when passthrough
+  + glx: Iterate over FBConfig and select 8 bit color size
+
+-------------------------------------------------------------------

Old:
----
  gst-libav-1.18.3.tar.xz

New:
----
  gst-libav-1.18.4.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gstreamer-plugins-libav.spec ++++++
--- /var/tmp/diff_new_pack.6Eeklc/_old  2021-04-10 15:27:24.258380361 +0200
+++ /var/tmp/diff_new_pack.6Eeklc/_new  2021-04-10 15:27:24.262380365 +0200
@@ -19,7 +19,7 @@
 %define gst_branch 1.0
 
 Name:           gstreamer-plugins-libav
-Version:        1.18.3
+Version:        1.18.4
 Release:        0
 Summary:        A ffmpeg/libav plugin for GStreamer
 License:        GPL-2.0-or-later

++++++ gst-libav-1.18.3.tar.xz -> gst-libav-1.18.4.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gst-libav-1.18.3/ChangeLog 
new/gst-libav-1.18.4/ChangeLog
--- old/gst-libav-1.18.3/ChangeLog      2021-01-13 22:11:50.250149300 +0100
+++ new/gst-libav-1.18.4/ChangeLog      2021-03-15 18:49:44.589546200 +0100
@@ -1,3 +1,63 @@
+=== release 1.18.4 ===
+
+2021-03-15 17:49:43 +0000  Tim-Philipp M??ller <t...@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * gst-libav.doap:
+       * meson.build:
+         Release 1.18.4
+
+2021-03-03 10:51:04 +0200  Sebastian Dr??ge <sebast...@centricular.com>
+
+       * ext/libav/gstavcodecmap.c:
+         avcodecmap: Don't try converting channel layouts with more than 64 
channels
+         We only support up to 64 channels in GStreamer with a specific layout 
so
+         it's safe to assume a NONE layout in this case.
+         Also the arrays of channel positions are allocated everywhere with 64
+         elements so don't try setting more than 64 to NONE as that will cause
+         stack corruptions and similar memory safety issues.
+         Thanks to Natalie Silvanovich for reporting this issue.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-libav/-/issues/92
+         Part-of: 
<https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/121>
+
+2020-12-02 15:43:15 +1100  Matthew Waters <matt...@centricular.com>
+
+       * ext/libav/gstavviddec.c:
+         avviddec: take the maximum of the height/coded_height
+         Otherwise, some h.264 streams (particularly with cropping information)
+         may cause memory corruption after a renegotiation to a smaller size 
when
+         decoded and then ffmpeg writes past the end of the buffer.
+         Fixes: https://gitlab.freedesktop.org/gstreamer/gst-libav/-/issues/80
+         Part-of: 
<https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/118>
+
+2021-01-28 06:11:14 +0000  Matthew Waters <matt...@centricular.com>
+
+       * ext/libav/gstavviddec.c:
+         viddec: don't configure and incorrect buffer pool when receiving a 
gap event
+         Scenario is this:
+         1. libav receives enough data to want a buffer with get_buffer2()
+         which wants a buffer pool with a certain format, say Y42B but does
+         not negotiate and therefore GstVideoDecoder does not have any output
+         state configured
+         2. A gap event is received which GstVideoDecoder wants to forward.  It
+         needs caps to forward the gap event so attempts to negotiate with some
+         default information which chooses e.g. I420 and overwrites the
+         previously configured bufferpool decided on by get_buffer2()
+         3. There is a mismatch between what ensure_internal_pool() check for
+         consistency and what decide_allocation() sets when overriding the
+         internal pool with the downstream pool.
+         4. FFMpeg then requests a Y42B buffer from an I420 pool and 
predictably
+         crashes writing past the contents of the buffer
+         This is fixed by keeping track of the internal pool states correctly.
+         Part-of: 
<https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/117>
+
+2021-01-14 02:17:38 +0000  Tim-Philipp M??ller <t...@centricular.com>
+
+       * meson.build:
+         Back to development
+
 === release 1.18.3 ===
 
 2021-01-13 21:11:49 +0000  Tim-Philipp M??ller <t...@centricular.com>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gst-libav-1.18.3/NEWS new/gst-libav-1.18.4/NEWS
--- old/gst-libav-1.18.3/NEWS   2021-01-13 22:11:50.250149300 +0100
+++ new/gst-libav-1.18.4/NEWS   2021-03-15 18:49:44.593546200 +0100
@@ -2,13 +2,13 @@
 
 GStreamer 1.18.0 was originally released on 8 September 2020.
 
-The latest bug-fix release in the 1.18 series is 1.18.3 and was released
-on 13 January 2021.
+The latest bug-fix release in the 1.18 series is 1.18.4 and was released
+on 15 March 2021.
 
 See https://gstreamer.freedesktop.org/releases/1.18/ for the latest
 version of this document.
 
-Last updated: Wednesday 13 January 2021, 20:00 UTC (log)
+Last updated: Monday 15 March 2021, 13:00 UTC (log)
 
 Introduction
 
@@ -2717,6 +2717,168 @@
 -   List of Merge Requests applied in 1.18.3
 -   List of Issues fixed in 1.18.3
 
+1.18.4
+
+The fourth 1.18 bug-fix release (1.18.4) was released on 15 March 2021.
+
+This release only contains bugfixes and security fixes and it should be
+safe to update from 1.18.x.
+
+Highlighted bugfixes in 1.18.4
+
+-   important security fixes for ID3 tag reading, matroska and realmedia
+    parsing, and gst-libav audio decoding
+-   audiomixer, audioaggregator: input buffer handling fixes
+-   decodebin3: improve stream-selection message handling
+-   uridecodebin3: make ???caps??? property work
+-   wavenc: fix writing of INFO chunks in some cases
+-   v4l2: bt601 colorimetry, allow encoder resolution changes, fix
+    decoder frame rate negotiation
+-   decklinkvideosink: fix auto format detection, and fixes for 29.97fps
+    framerate output
+-   mpeg-2 video handling fixes when seeking
+-   avviddec: fix bufferpool negotiation and possible memory corruption
+    when changing resolution
+-   various stability, performance and reliability improvements
+-   memory leak fixes
+-   build fixes: rpicamsrc, qt overlay example, d3d11videosink on UWP
+
+gstreamer
+
+-   info: Don???t leak log function user_data if the debug system is
+    compiled out
+-   task: Use SetThreadDescription() Win32 API for setting thread names,
+    which preserves thread names in dump files.
+-   buffer, memory: Mark info in map functions as caller-allocates and
+    pass allocation params as const pointers where possible
+-   clock: define AUTO_CLEANUP_FREE_FUNC for GstClockID
+
+gst-plugins-base
+
+-   tag: id3v2: fix frame size check and potential invalid reads
+-   audio: Fix gst_audio_buffer_truncate() meta handling for
+    non-interleaved audio
+-   audioresample: respect buffer layout when draining
+-   audioaggregator: fix input_buffer ownership
+-   decodebin3: change stream selection message owner, so that the app
+    sends the stream-selection event to the right element
+-   rtspconnection: correct data_size when tunneled mode
+-   uridecodebin3: make caps property work
+-   video-converter: Don???t upsample invalid lines
+-   videodecoder: Fix racy critical when pool negotiation occurs during
+    flush
+-   video: Convert gst_video_info_to_caps() to take self as const ptr
+-   examples: added qt core dependency for qt overlay example
+
+gst-plugins-good
+
+-   matroskademux: header parsing fixes
+-   rpicamsrc: depend on posix threads and vchiq_arm to fix build on
+    raspios again
+-   wavenc: Fixed INFO chunk corruption, caused by odd sized data not
+    being padded
+-   wavpackdec: Add floating point format support to fix distortions in
+    some cases
+-   v4l2: recognize V4L2 bt601 colorimetry again
+-   v4l2videoenc: support resolution change stream encode
+-   v4l2h265codec: fix HEVC profile string issue
+-   v4l2object: Need keep same transfer as input caps
+-   v4l2videodec: Fix vp8 and vp9 streams can???t play on board with
+    vendor bsp
+-   v4l2videodec: fix src side frame rate negotiation
+
+gst-plugins-bad
+
+-   avwait: Don???t post messages with the mutex locked
+-   d3d11h264dec: Reconfigure decoder object on DPB size change and keep
+    track of actually configured DPB size
+-   dashsink: fix double unref of sinkpad caps
+-   decklinkvideosink: Use correct numerator for 29.97fps
+-   decklinkvideosink: fix auto format detection
+-   decklinksrc: Use a more accurate capture time
+-   d3d11videosink: Fix build error on UWP
+-   interlace: negotiation and buffer leak fixes
+-   mpegvideoparse: do not clip, so decoder receives data from keyframe
+    even if it???s before the segment start
+-   mpegtsparse: Fix switched DTS/PTS when set-timestamps=false
+-   nvh264sldec: Reopen decoder object if larger DPB size is required
+-   sdpsrc: fix double free if sdp is provided as string via the
+    property
+-   vulkan: Fix elements long name.
+
+gst-plugins-ugly
+
+-   rmdemux: Make sure we have enough data available when parsing
+    audio/video packets
+
+gst-libav
+
+-   avviddec: take the maximum of the height/coded_height
+-   viddec: don???t configure an incorrect buffer pool when receiving a
+    gap event
+-   audiodec: fix stack overflow in gst_ffmpeg_channel_layout_to_gst()
+
+gst-rtsp-server
+
+-   rtspclientsink: fix deadlock on shutdown if no data has been
+    received yet
+-   rtspclientsink: fix leaks in unit tests
+-   rtsp-stream: avoid deadlock in send_func
+-   rtsp-client: cleanup transports during TEARDOWN
+
+gstreamer-vaapi
+
+-   h264 encoder: append encoder exposure to aud
+-   postproc: Fix a problem of propose_allocation when passthrough
+-   glx: Iterate over FBConfig and select 8 bit color size
+
+gstreamer-sharp
+
+-   no changes
+
+gst-omx
+
+-   no changes
+
+gst-python
+
+-   no changes
+
+gst-editing-services
+
+-   group: Use proper group constructor
+
+gst-integration-testsuites
+
+-   no changes
+
+gst-build
+
+-   no changes
+
+Cerbero build tool and packaging changes in 1.18.4
+
+-   macOS: more BigSur fixes
+-   glib: Backport patch to set thread names on Windows 10
+
+Contributors to 1.18.4
+
+Alicia Boya Garc??a, Ashley Brighthope, Bing Song, Branko Subasic, Edward
+Hervey, Guillaume Desmottes, Haihua Hu, He Junyan, Hou Qi, Jan Alexander
+Steffens (heftig), Jeongki Kim, Jordan Petridis, Knobe, Kristofer
+Bj??rkstr??m, Marijn Suijten, Matthew Waters, Paul Goulpi??, Philipp Zabel,
+Rafa?? Dzi??giel, Sebastian Dr??ge, Seungha Yang, Staz M, St??phane Cerveau,
+Thibault Saunier, Tim-Philipp M??ller, V??ctor Manuel J??quez Leal, Vivia
+Nikolaidou, Vladimir Menshakov,
+
+??? 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.18.4
+
+-   List of Merge Requests applied in 1.18.4
+-   List of Issues fixed in 1.18.4
+
 Schedule for 1.20
 
 Our next major feature release will be 1.20, and 1.19 will be the
@@ -2724,9 +2886,9 @@
 development of 1.19/1.20 will happen in the git master branch.
 
 The plan for the 1.20 development cycle is yet to be confirmed, but it
-is now expected that feature freeze will take place some time in
-January/February 2021, with the first 1.20 stable release hopefully
-around February/March 2021.
+is now expected that feature freeze will take place some time in April
+2021, with the first 1.20 stable release hopefully around April/May
+2021.
 
 1.20 will be backwards-compatible to the stable 1.18, 1.16, 1.14, 1.12,
 1.10, 1.8, 1.6, 1.4, 1.2 and 1.0 release series.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gst-libav-1.18.3/RELEASE new/gst-libav-1.18.4/RELEASE
--- old/gst-libav-1.18.3/RELEASE        2021-01-13 22:11:50.250149300 +0100
+++ new/gst-libav-1.18.4/RELEASE        2021-03-15 18:49:44.593546200 +0100
@@ -1,4 +1,4 @@
-This is GStreamer gst-libav 1.18.3.
+This is GStreamer gst-libav 1.18.4.
 
 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.18.3/ext/libav/gstavcodecmap.c 
new/gst-libav-1.18.4/ext/libav/gstavcodecmap.c
--- old/gst-libav-1.18.3/ext/libav/gstavcodecmap.c      2021-01-13 
22:11:50.278149400 +0100
+++ new/gst-libav-1.18.4/ext/libav/gstavcodecmap.c      2021-03-15 
18:49:44.625544300 +0100
@@ -102,7 +102,7 @@
   guint nchannels = 0;
   gboolean none_layout = FALSE;
 
-  if (channel_layout == 0) {
+  if (channel_layout == 0 || channels > 64) {
     nchannels = channels;
     none_layout = TRUE;
   } else {
@@ -163,7 +163,7 @@
     } else {
       guint i;
 
-      for (i = 0; i < nchannels; i++)
+      for (i = 0; i < nchannels && i < 64; i++)
         pos[i] = GST_AUDIO_CHANNEL_POSITION_NONE;
     }
   }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gst-libav-1.18.3/ext/libav/gstavviddec.c 
new/gst-libav-1.18.4/ext/libav/gstavviddec.c
--- old/gst-libav-1.18.3/ext/libav/gstavviddec.c        2021-01-13 
22:11:50.278149400 +0100
+++ new/gst-libav-1.18.4/ext/libav/gstavviddec.c        2021-03-15 
18:49:44.629544300 +0100
@@ -90,6 +90,8 @@
 /* some sort of bufferpool handling, but different */
 static int gst_ffmpegviddec_get_buffer2 (AVCodecContext * context,
     AVFrame * picture, int flags);
+static gboolean gst_ffmpegviddec_can_direct_render (GstFFMpegVidDec *
+    ffmpegdec);
 
 static GstFlowReturn gst_ffmpegviddec_finish (GstVideoDecoder * decoder);
 static GstFlowReturn gst_ffmpegviddec_drain (GstVideoDecoder * decoder);
@@ -663,7 +665,7 @@
   gsize max_align;
 
   width = GST_VIDEO_INFO_WIDTH (info);
-  height = GST_VIDEO_INFO_HEIGHT (info);
+  height = MAX (GST_VIDEO_INFO_HEIGHT (info), 
ffmpegdec->context->coded_height);
 
   /* let ffmpeg find the alignment and padding */
   avcodec_align_dimensions2 (ffmpegdec->context, &width, &height,
@@ -718,7 +720,10 @@
   GstStructure *config;
   guint i;
 
+  format = gst_ffmpeg_pixfmt_to_videoformat (picture->format);
+
   if (ffmpegdec->internal_pool != NULL &&
+      GST_VIDEO_INFO_FORMAT (&ffmpegdec->pool_info) == format &&
       ffmpegdec->pool_width == picture->width &&
       ffmpegdec->pool_height == picture->height &&
       ffmpegdec->pool_format == picture->format)
@@ -727,6 +732,11 @@
   GST_DEBUG_OBJECT (ffmpegdec, "Updating internal pool (%i, %i)",
       picture->width, picture->height);
 
+  /* if we are negotiating from get_buffer, then renegotiate later in order
+   * to potentially use a downstream pool */
+  if (gst_ffmpegviddec_can_direct_render (ffmpegdec))
+    gst_pad_mark_reconfigure (GST_VIDEO_DECODER_SRC_PAD (ffmpegdec));
+
   format = gst_ffmpeg_pixfmt_to_videoformat (picture->format);
   gst_video_info_set_format (&info, format, picture->width, picture->height);
 
@@ -2128,6 +2138,8 @@
           if (ffmpegdec->internal_pool)
             gst_object_unref (ffmpegdec->internal_pool);
           ffmpegdec->internal_pool = gst_object_ref (pool);
+          ffmpegdec->pool_width = GST_VIDEO_INFO_WIDTH (&state->info);
+          ffmpegdec->pool_height = GST_VIDEO_INFO_HEIGHT (&state->info);
           ffmpegdec->pool_info = state->info;
           gst_structure_free (config);
           goto done;
@@ -2137,6 +2149,8 @@
   }
 
   if (have_videometa && ffmpegdec->internal_pool
+      && gst_ffmpeg_pixfmt_to_videoformat (ffmpegdec->pool_format) ==
+      GST_VIDEO_INFO_FORMAT (&state->info)
       && ffmpegdec->pool_width == state->info.width
       && ffmpegdec->pool_height == state->info.height) {
     update_pool = TRUE;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gst-libav-1.18.3/gst-libav.doap 
new/gst-libav-1.18.4/gst-libav.doap
--- old/gst-libav-1.18.3/gst-libav.doap 2021-01-13 22:11:50.278149400 +0100
+++ new/gst-libav-1.18.4/gst-libav.doap 2021-03-15 18:49:44.629544300 +0100
@@ -34,6 +34,16 @@
 
  <release>
   <Version>
+   <revision>1.18.4</revision>
+   <branch>1.18</branch>
+   <name></name>
+   <created>2021-03-15</created>
+   <file-release 
rdf:resource="https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.18.4.tar.xz";
 />
+  </Version>
+ </release>
+
+ <release>
+  <Version>
    <revision>1.18.3</revision>
    <branch>1.18</branch>
    <name></name>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gst-libav-1.18.3/meson.build 
new/gst-libav-1.18.4/meson.build
--- old/gst-libav-1.18.3/meson.build    2021-01-13 22:11:50.278149400 +0100
+++ new/gst-libav-1.18.4/meson.build    2021-03-15 18:49:44.629544300 +0100
@@ -1,5 +1,5 @@
 project('gst-libav', 'c', 'cpp',
-  version : '1.18.3',
+  version : '1.18.4',
   meson_version : '>= 0.48.0',
   default_options : [ 'warning_level=1',
                       'buildtype=debugoptimized' ])

Reply via email to