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 2026-09-11 19:00:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gstreamer-plugins-libav (Old)
 and      /work/SRC/openSUSE:Factory/.gstreamer-plugins-libav.new.1265 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gstreamer-plugins-libav"

Fri Sep 11 19:00:57 2026 rev:74 rq:1376931 version:1.28.7

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/gstreamer-plugins-libav/gstreamer-plugins-libav.changes
  2026-08-06 16:19:59.879831821 +0200
+++ 
/work/SRC/openSUSE:Factory/.gstreamer-plugins-libav.new.1265/gstreamer-plugins-libav.changes
        2026-09-11 19:01:59.619274512 +0200
@@ -1,0 +2,7 @@
+Tue Sep  8 07:13:05 UTC 2026 - Bjørn Lie <[email protected]>
+
+- Update to version 1.28.7:
+  + avauddec, avaudenc: Don't try channel layout mapping with >64
+    channels
+
+-------------------------------------------------------------------

Old:
----
  gst-libav-1.28.6.obscpio

New:
----
  gst-libav-1.28.7.obscpio

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

Other differences:
------------------
++++++ gstreamer-plugins-libav.spec ++++++
--- /var/tmp/diff_new_pack.9OxcBw/_old  2026-09-11 19:02:00.553313438 +0200
+++ /var/tmp/diff_new_pack.9OxcBw/_new  2026-09-11 19:02:00.555313521 +0200
@@ -19,7 +19,7 @@
 %define gst_branch 1.0
 
 Name:           gstreamer-plugins-libav
-Version:        1.28.6
+Version:        1.28.7
 Release:        0
 Summary:        A ffmpeg/libav plugin for GStreamer
 License:        LGPL-2.1-or-later

++++++ _service ++++++
--- /var/tmp/diff_new_pack.9OxcBw/_old  2026-09-11 19:02:00.581314605 +0200
+++ /var/tmp/diff_new_pack.9OxcBw/_new  2026-09-11 19:02:00.586314813 +0200
@@ -5,7 +5,7 @@
     <param 
name="url">https://gitlab.freedesktop.org/gstreamer/gstreamer.git</param>
     <param name="subdir">subprojects/gst-libav</param>
     <param name="filename">gst-libav</param>
-    <param name="revision">1.28.6</param>
+    <param name="revision">1.28.7</param>
     <param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
     <param name="versionrewrite-pattern">v?(.*)\+0</param>
     <param name="versionrewrite-replacement">\1</param>

++++++ gst-libav-1.28.6.obscpio -> gst-libav-1.28.7.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gst-libav-1.28.6/ext/libav/gstavauddec.c 
new/gst-libav-1.28.7/ext/libav/gstavauddec.c
--- old/gst-libav-1.28.6/ext/libav/gstavauddec.c        2026-08-05 
13:59:39.000000000 +0200
+++ new/gst-libav-1.28.7/ext/libav/gstavauddec.c        2026-09-07 
21:11:13.000000000 +0200
@@ -384,20 +384,26 @@
       frame->sample_rate, channels, format,
       layout == GST_AUDIO_LAYOUT_INTERLEAVED);
 
+  if (channels <= 64) {
 #if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 28, 100)
-  gst_ffmpeg_channel_layout_to_gst (&frame->ch_layout, channels, pos);
+    gst_ffmpeg_channel_layout_to_gst (&frame->ch_layout, channels, pos);
 #else
-  gst_ffmpeg_channel_layout_to_gst (frame->channel_layout, channels, pos);
+    gst_ffmpeg_channel_layout_to_gst (frame->channel_layout, channels, pos);
 #endif
-  memcpy (ffmpegdec->ffmpeg_layout, pos,
-      sizeof (GstAudioChannelPosition) * channels);
+    memcpy (ffmpegdec->ffmpeg_layout, pos,
+        sizeof (GstAudioChannelPosition) * channels);
 
-  /* Get GStreamer channel layout */
-  gst_audio_channel_positions_to_valid_order (pos, channels);
-  ffmpegdec->needs_reorder =
-      memcmp (pos, ffmpegdec->ffmpeg_layout, sizeof (pos[0]) * channels) != 0;
-  gst_audio_info_set_format (&ffmpegdec->info, format,
-      frame->sample_rate, channels, pos);
+    /* Get GStreamer channel layout */
+    gst_audio_channel_positions_to_valid_order (pos, channels);
+    ffmpegdec->needs_reorder =
+        memcmp (pos, ffmpegdec->ffmpeg_layout, sizeof (pos[0]) * channels) != 
0;
+    gst_audio_info_set_format (&ffmpegdec->info, format,
+        frame->sample_rate, channels, pos);
+  } else {
+    ffmpegdec->needs_reorder = FALSE;
+    gst_audio_info_set_format (&ffmpegdec->info, format,
+        frame->sample_rate, channels, NULL);
+  }
   ffmpegdec->info.layout = layout;
 
   if (!gst_audio_decoder_set_output_format (GST_AUDIO_DECODER (ffmpegdec),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gst-libav-1.28.6/ext/libav/gstavaudenc.c 
new/gst-libav-1.28.7/ext/libav/gstavaudenc.c
--- old/gst-libav-1.28.6/ext/libav/gstavaudenc.c        2026-08-05 
13:59:39.000000000 +0200
+++ new/gst-libav-1.28.7/ext/libav/gstavaudenc.c        2026-09-07 
21:11:13.000000000 +0200
@@ -254,7 +254,8 @@
 #endif
   }
 #if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 28, 100)
-  if (ffmpegaudenc->context->ch_layout.order != AV_CHANNEL_ORDER_UNSPEC) {
+  if (ffmpegaudenc->context->ch_layout.order != AV_CHANNEL_ORDER_UNSPEC
+      && ffmpegaudenc->context->ch_layout.nb_channels <= 64) {
     gst_ffmpeg_channel_layout_to_gst (&ffmpegaudenc->context->ch_layout,
         ffmpegaudenc->context->ch_layout.nb_channels,
         ffmpegaudenc->ffmpeg_layout);
@@ -262,15 +263,20 @@
         (memcmp (ffmpegaudenc->ffmpeg_layout, info->position,
             sizeof (GstAudioChannelPosition) *
             ffmpegaudenc->context->ch_layout.nb_channels) != 0);
+  } else {
+    ffmpegaudenc->needs_reorder = FALSE;
   }
 #else
-  if (ffmpegaudenc->context->channel_layout) {
+  if (ffmpegaudenc->context->channel_layout
+      && ffmpegaudenc->context->channels <= 64) {
     gst_ffmpeg_channel_layout_to_gst (ffmpegaudenc->context->channel_layout,
         ffmpegaudenc->context->channels, ffmpegaudenc->ffmpeg_layout);
     ffmpegaudenc->needs_reorder =
         (memcmp (ffmpegaudenc->ffmpeg_layout, info->position,
             sizeof (GstAudioChannelPosition) *
             ffmpegaudenc->context->channels) != 0);
+  } else {
+    ffmpegaudenc->needs_reorder = FALSE;
   }
 #endif
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gst-libav-1.28.6/ext/libav/gstavcodecmap.c 
new/gst-libav-1.28.7/ext/libav/gstavcodecmap.c
--- old/gst-libav-1.28.6/ext/libav/gstavcodecmap.c      2026-08-05 
13:59:39.000000000 +0200
+++ new/gst-libav-1.28.7/ext/libav/gstavcodecmap.c      2026-09-07 
21:11:13.000000000 +0200
@@ -97,11 +97,14 @@
   g_assert (layout);
 
   if (!pos) {
-    memset (layout, 0, sizeof (AVChannelLayout));
+    av_channel_layout_uninit (layout);
+    layout->order = AV_CHANNEL_ORDER_UNSPEC;
+    layout->nb_channels = channels;
     return;
   }
 
   if (channels == 1 && pos[0] == GST_AUDIO_CHANNEL_POSITION_MONO) {
+    av_channel_layout_uninit (layout);
     *layout = (AVChannelLayout) AV_CHANNEL_LAYOUT_MONO;
     return;
   }
@@ -125,10 +128,11 @@
 
 #if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 28, 100)
   if (channels_found != channels && av_channel_layout_check (layout)) {
-    memset (layout, 0, sizeof (AVChannelLayout));
+    av_channel_layout_uninit (layout);
     return;
   }
 
+  av_channel_layout_uninit (layout);
   layout->u.mask = ret;
   layout->nb_channels = channels_found;
   layout->order = AV_CHANNEL_ORDER_NATIVE;
@@ -204,7 +208,8 @@
             if (_ff_to_gst_layout[i].gst == GST_AUDIO_CHANNEL_POSITION_NONE)
               none_layout = TRUE;
           }
-        } else if (channel_layout->order == AV_CHANNEL_ORDER_CUSTOM) {
+        } else if (channel_layout->order == AV_CHANNEL_ORDER_CUSTOM
+            && i < channel_layout->nb_channels) {
           if (_ff_to_gst_layout[i].ff == (1ULL << 
channel_layout->u.map[i].id)) {
             pos[j++] = _ff_to_gst_layout[i].gst;
 
@@ -671,7 +676,8 @@
         av_channel_layout_compare (&context->ch_layout, &mono) != 0) {
       pos[0] = GST_AUDIO_CHANNEL_POSITION_MONO;
       needs_mask = TRUE;
-    } else if (context->ch_layout.nb_channels > 1) {
+    } else if (context->ch_layout.nb_channels > 1
+        && context->ch_layout.nb_channels <= 64) {
       gst_ffmpeg_channel_layout_to_gst (&context->ch_layout,
           context->ch_layout.nb_channels, pos);
       needs_mask = TRUE;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gst-libav-1.28.6/gst-libav.doap 
new/gst-libav-1.28.7/gst-libav.doap
--- old/gst-libav-1.28.6/gst-libav.doap 2026-08-05 13:59:39.000000000 +0200
+++ new/gst-libav-1.28.7/gst-libav.doap 2026-09-07 21:11:13.000000000 +0200
@@ -34,6 +34,16 @@
 
  <release>
   <Version>
+   <revision>1.28.7</revision>
+   <branch>1.28</branch>
+   <name></name>
+   <created>2026-09-07</created>
+   <file-release 
rdf:resource="https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.28.7.tar.xz";
 />
+  </Version>
+ </release>
+
+ <release>
+  <Version>
    <revision>1.28.6</revision>
    <branch>1.28</branch>
    <name></name>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gst-libav-1.28.6/meson.build 
new/gst-libav-1.28.7/meson.build
--- old/gst-libav-1.28.6/meson.build    2026-08-05 13:59:39.000000000 +0200
+++ new/gst-libav-1.28.7/meson.build    2026-09-07 21:11:13.000000000 +0200
@@ -1,5 +1,5 @@
 project('gst-libav', 'c',
-  version : '1.28.6',
+  version : '1.28.7',
   meson_version : '>= 1.4',
   default_options : [ 'warning_level=1',
                       'buildtype=debugoptimized',

++++++ gst-libav.obsinfo ++++++
--- /var/tmp/diff_new_pack.9OxcBw/_old  2026-09-11 19:02:00.901327941 +0200
+++ /var/tmp/diff_new_pack.9OxcBw/_new  2026-09-11 19:02:00.913328441 +0200
@@ -1,5 +1,5 @@
 name: gst-libav
-version: 1.28.6
-mtime: 1785931179
-commit: 2d3e05cbdad68e47d645f548899b432dc9fb4473
+version: 1.28.7
+mtime: 1788808273
+commit: 070125524a8422e29d3b69a372ed4f62fd343ffa
 

Reply via email to