Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package alsa-plugins for openSUSE:Factory 
checked in at 2021-06-05 23:30:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/alsa-plugins (Old)
 and      /work/SRC/openSUSE:Factory/.alsa-plugins.new.1898 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "alsa-plugins"

Sat Jun  5 23:30:30 2021 rev:111 rq:896396 version:1.2.5

Changes:
--------
--- /work/SRC/openSUSE:Factory/alsa-plugins/alsa-plugins.changes        
2020-10-06 17:10:52.677515239 +0200
+++ /work/SRC/openSUSE:Factory/.alsa-plugins.new.1898/alsa-plugins.changes      
2021-06-05 23:30:50.396365752 +0200
@@ -1,0 +2,12 @@
+Mon May 31 11:48:44 UTC 2021 - Ferdinand Thiessen <r...@fthiessen.de>
+
+- Update to 1.2.5
+  * Support alsa 1.2.5
+  * Fixed A52 Output plugin
+  * upmix: complete generalizing format
+  * jack: add option to allow non-jack-aligned period size
+  * oss: fix the config (port -> device)
+  * pulse: pcm - handle reading pulse stream hole
+  * usb_stream: use snd_config_get_card() to decode the card number 
+
+-------------------------------------------------------------------

Old:
----
  alsa-plugins-1.2.2.tar.bz2

New:
----
  alsa-plugins-1.2.5.tar.bz2

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

Other differences:
------------------
++++++ alsa-plugins.spec ++++++
--- /var/tmp/diff_new_pack.Uc2I1g/_old  2021-06-05 23:30:50.928366677 +0200
+++ /var/tmp/diff_new_pack.Uc2I1g/_new  2021-06-05 23:30:50.932366683 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package alsa-plugins
 #
-# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2021 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -23,16 +23,16 @@
 %endif
 
 Name:           alsa-plugins
-Version:        1.2.2
+Version:        1.2.5
 Release:        0
 Summary:        Extra Plug-Ins for ALSA Library
 License:        LGPL-2.1-or-later
 Group:          System/Libraries
-Url:            http://www.alsa-project.org/
-Source:         
ftp://ftp.alsa-project.org/pub/plugins/alsa-plugins-%{version}.tar.bz2
+Url:            https://www.alsa-project.org
+Source:         
https://www.alsa-project.org/files/pub/plugins/alsa-plugins-%{version}.tar.bz2
 Source1:        baselibs.conf
 BuildRequires:  libtool
-BuildRequires:  pkgconfig(alsa) >= 1.1.6
+BuildRequires:  pkgconfig(alsa) >= 1.2.5
 %if %{build_aaf}
 BuildRequires:  pkgconfig(avtp)
 %endif

++++++ alsa-plugins-1.2.2.tar.bz2 -> alsa-plugins-1.2.5.tar.bz2 ++++++
++++ 4293 lines of diff (skipped)
++++    retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/alsa-plugins-1.2.2/a52/pcm_a52.c new/alsa-plugins-1.2.5/a52/pcm_a52.c
--- old/alsa-plugins-1.2.2/a52/pcm_a52.c        2020-02-19 10:35:42.000000000 
+0100
+++ new/alsa-plugins-1.2.5/a52/pcm_a52.c        2021-05-27 19:18:39.000000000 
+0200
@@ -144,7 +144,7 @@
 /* write pending encoded data to the slave pcm */
 static int write_out_pending(snd_pcm_ioplug_t *io, struct a52_ctx *rec)
 {
-       int err, ofs = 0;
+       int err, ofs = (rec->avctx->frame_size - rec->remain) * 4;
 
        if (! rec->remain)
                return 0;
@@ -154,6 +154,8 @@
                if (err < 0) {
                        if (err == -EPIPE)
                                io->state = SND_PCM_STATE_XRUN;
+                       if (err == -EAGAIN)
+                               break;
                        return err;
                } else if (! err)
                        break;
@@ -161,8 +163,6 @@
                        ofs += (rec->remain - err) * 4;
                rec->remain -= err;
        }
-       if (rec->remain && ofs)
-               memmove(rec->outbuf, rec->outbuf + ofs, rec->remain * 4);
        return 0;
 }
 
@@ -255,6 +255,12 @@
        if ((err = write_out_pending(io, rec)) < 0)
                return err;
 
+       /* If there are still frames left in outbuf, we can't
+        * accept a full a52 frame, because this would overwrite
+        * the frames in outbuf. */
+       if (rec->remain && len)
+               len--;
+
        if (size > len)
                size = len;
 
@@ -312,7 +318,7 @@
 
        do {
                err = fill_data(io, areas, offset, size, interleaved);
-               if (err < 0)
+               if (err <= 0)
                        break;
                offset += (unsigned int)err;
                size -= (unsigned int)err;
@@ -325,21 +331,18 @@
 /*
  * pointer callback
  *
- * Calculate the current position from the delay of slave PCM
+ * Calculate the current position from the available frames of slave PCM
  */
 static snd_pcm_sframes_t a52_pointer(snd_pcm_ioplug_t *io)
 {
        struct a52_ctx *rec = io->private_data;
-       snd_pcm_sframes_t delay;
+       snd_pcm_sframes_t avail;
        snd_pcm_state_t state;
-       int err;
 
        state = snd_pcm_state(rec->slave);
        switch (state) {
        case SND_PCM_STATE_RUNNING:
        case SND_PCM_STATE_DRAINING:
-               if ((err = snd_pcm_delay(rec->slave, &delay)) < 0)
-                       return err;
                break;
        case SND_PCM_STATE_XRUN:
        case SND_PCM_STATE_SUSPENDED:
@@ -348,16 +351,25 @@
                return 0;
        }
 
-       if (delay < 0 || delay >= (snd_pcm_sframes_t)rec->slave_buffer_size)
-               delay = 0;
-       delay = (snd_pcm_sframes_t)io->appl_ptr - delay;
-       if (delay < 0) {
-               delay += io->buffer_size;
-               if (delay < 0)
-                       delay = 0;
+       avail = 0;
+
+       /* Write what we have from outbuf. */
+       write_out_pending(io, rec);
+
+       /* If there is anything remaining in outbuf, we can't
+        * accept any full packets. */
+       if (rec->remain == 0)
+       {
+               /* Round the slave frames to multiples of the packet size. */
+               avail += (snd_pcm_avail_update(rec->slave) / 
rec->avctx->frame_size) * rec->avctx->frame_size;
        }
-       delay %= io->buffer_size;
-       return delay;
+
+       if (avail < 0)
+               avail = 0;
+       else if (avail >= io->buffer_size)
+               avail = io->buffer_size - 1;
+
+       return (io->appl_ptr + avail) % io->buffer_size;
 }
 
 /* set up the fixed parameters of slave PCM hw_parmas */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/alsa-plugins-1.2.2/compile new/alsa-plugins-1.2.5/compile
--- old/alsa-plugins-1.2.2/compile      2020-02-19 11:26:51.000000000 +0100
+++ new/alsa-plugins-1.2.5/compile      2021-05-27 22:06:35.000000000 +0200
@@ -3,7 +3,7 @@
 
 scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 # Written by Tom Tromey <tro...@cygnus.com>.
 #
 # This program is free software; you can redistribute it and/or modify
@@ -53,7 +53,7 @@
          MINGW*)
            file_conv=mingw
            ;;
-         CYGWIN*)
+         CYGWIN* | MSYS*)
            file_conv=cygwin
            ;;
          *)
@@ -67,7 +67,7 @@
        mingw/*)
          file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
          ;;
-       cygwin/*)
+       cygwin/* | msys/*)
          file=`cygpath -m "$file" || echo "$file"`
          ;;
        wine/*)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/alsa-plugins-1.2.2/configure.ac new/alsa-plugins-1.2.5/configure.ac
--- old/alsa-plugins-1.2.2/configure.ac 2020-02-19 10:35:42.000000000 +0100
+++ new/alsa-plugins-1.2.5/configure.ac 2021-05-27 19:18:39.000000000 +0200
@@ -1,5 +1,5 @@
 AC_PREREQ(2.59)
-AC_INIT(alsa-plugins, 1.2.2)
+AC_INIT(alsa-plugins, 1.2.5)
 AM_INIT_AUTOMAKE
 AC_PREFIX_DEFAULT(/usr)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/alsa-plugins-1.2.2/jack/pcm_jack.c new/alsa-plugins-1.2.5/jack/pcm_jack.c
--- old/alsa-plugins-1.2.2/jack/pcm_jack.c      2020-02-19 10:35:42.000000000 
+0100
+++ new/alsa-plugins-1.2.5/jack/pcm_jack.c      2021-05-27 19:18:39.000000000 
+0200
@@ -51,6 +51,7 @@
        snd_pcm_uframes_t hw_ptr;
        unsigned int sample_bits;
        snd_pcm_uframes_t min_avail;
+       int use_period_alignment;
 
        snd_pcm_channel_area_t *areas;
 
@@ -450,8 +451,9 @@
                                                   jack->num_ports, 
jack->num_ports)) < 0 ||
            (err = snd_pcm_ioplug_set_param_minmax(&jack->io, 
SND_PCM_IOPLUG_HW_RATE,
                                                   rate, rate)) < 0 ||
-           (err = snd_pcm_ioplug_set_param_list(&jack->io, 
SND_PCM_IOPLUG_HW_PERIOD_BYTES,
-                                                ARRAY_SIZE(psize_list), 
psize_list)) < 0 ||
+           (err = jack->use_period_alignment ?
+                               snd_pcm_ioplug_set_param_list(&jack->io, 
SND_PCM_IOPLUG_HW_PERIOD_BYTES, ARRAY_SIZE(psize_list), psize_list) :
+                               snd_pcm_ioplug_set_param_minmax(&jack->io, 
SND_PCM_IOPLUG_HW_PERIOD_BYTES, 128, 64*1024) ) < 0 ||
            (err = snd_pcm_ioplug_set_param_minmax(&jack->io, 
SND_PCM_IOPLUG_HW_PERIODS,
                                                   2, 64)) < 0)
                return err;
@@ -532,6 +534,7 @@
                             const char *client_name,
                             snd_config_t *playback_conf,
                             snd_config_t *capture_conf,
+                            int use_period_alignment,
                             snd_pcm_stream_t stream, int mode)
 {
        snd_pcm_jack_t *jack;
@@ -547,6 +550,7 @@
 
        jack->fd = -1;
        jack->io.poll_fd = -1;
+       jack->use_period_alignment = use_period_alignment;
 
        err = parse_ports(jack, stream == SND_PCM_STREAM_PLAYBACK ?
                          playback_conf : capture_conf);
@@ -635,6 +639,7 @@
        snd_config_t *capture_conf = NULL;
        const char *client_name = NULL;
        int err;
+       int align_jack_period = 1; /*by default we allow only JACK aligned 
period size*/
        
        snd_config_for_each(i, next, conf) {
                snd_config_t *n = snd_config_iterator_entry(i);
@@ -663,11 +668,18 @@
                        capture_conf = n;
                        continue;
                }
+               if (strcmp(id, "align_psize") == 0) {
+                       err = snd_config_get_bool(n);
+                       if (err < 0)
+                               return err;
+                       align_jack_period = err ? 1 : 0;
+                       continue;
+               }
                SNDERR("Unknown field %s", id);
                return -EINVAL;
        }
 
-       err = snd_pcm_jack_open(pcmp, name, client_name, playback_conf, 
capture_conf, stream, mode);
+       err = snd_pcm_jack_open(pcmp, name, client_name, playback_conf, 
capture_conf, align_jack_period, stream, mode);
 
        return err;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/alsa-plugins-1.2.2/missing new/alsa-plugins-1.2.5/missing
--- old/alsa-plugins-1.2.2/missing      2020-02-19 11:26:51.000000000 +0100
+++ new/alsa-plugins-1.2.5/missing      2021-05-27 22:06:35.000000000 +0200
@@ -3,7 +3,7 @@
 
 scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 # Originally written by Fran,cois Pinard <pin...@iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/alsa-plugins-1.2.2/mix/pcm_upmix.c new/alsa-plugins-1.2.5/mix/pcm_upmix.c
--- old/alsa-plugins-1.2.2/mix/pcm_upmix.c      2020-02-19 10:35:42.000000000 
+0100
+++ new/alsa-plugins-1.2.5/mix/pcm_upmix.c      2021-05-27 19:18:39.000000000 
+0200
@@ -516,9 +516,9 @@
                                                     
SND_PCM_EXTPLUG_HW_CHANNELS,
                                                     3, chlist);
        snd_pcm_extplug_set_param(&mix->ext, SND_PCM_EXTPLUG_HW_FORMAT,
-                                 SND_PCM_FORMAT_S16);
+                                 UPMIX_PCM_FORMAT);
        snd_pcm_extplug_set_slave_param(&mix->ext, SND_PCM_EXTPLUG_HW_FORMAT,
-                                       SND_PCM_FORMAT_S16);
+                                       UPMIX_PCM_FORMAT);
 
        *pcmp = mix->ext.pcm;
        return 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/alsa-plugins-1.2.2/oss/50-oss.conf new/alsa-plugins-1.2.5/oss/50-oss.conf
--- old/alsa-plugins-1.2.2/oss/50-oss.conf      2020-02-19 10:35:42.000000000 
+0100
+++ new/alsa-plugins-1.2.5/oss/50-oss.conf      2021-05-27 19:18:39.000000000 
+0200
@@ -5,7 +5,7 @@
                default "/dev/dsp"
        }
        type oss
-       port $DEVICE
+       device $DEVICE
        hint {
                show {
                        @func refer
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/alsa-plugins-1.2.2/pulse/pcm_pulse.c 
new/alsa-plugins-1.2.5/pulse/pcm_pulse.c
--- old/alsa-plugins-1.2.2/pulse/pcm_pulse.c    2020-02-19 10:35:42.000000000 
+0100
+++ new/alsa-plugins-1.2.5/pulse/pcm_pulse.c    2021-05-27 19:18:39.000000000 
+0200
@@ -522,16 +522,22 @@
                if (frag_length == 0)
                        break;
 
-               src_buf = (char *) src_buf + pcm->offset;
-               frag_length -= pcm->offset;
+               if (src_buf) {
+                       src_buf = (char *) src_buf + pcm->offset;
+                       frag_length -= pcm->offset;
 
-               if (frag_length > remain_size) {
-                       pcm->offset += remain_size;
-                       frag_length = remain_size;
-               } else
-                       pcm->offset = 0;
+                       if (frag_length > remain_size) {
+                               pcm->offset += remain_size;
+                               frag_length = remain_size;
+                       } else
+                               pcm->offset = 0;
 
-               memcpy(dst_buf, src_buf, frag_length);
+                       memcpy(dst_buf, src_buf, frag_length);
+               } else {
+                       /* If there is a hole in the stream, generate silence. 
*/
+                       int sample_size = 
snd_pcm_format_physical_width(io->format) / 8;
+                       snd_pcm_format_set_silence(io->format, dst_buf, 
frag_length / sample_size);
+               }
 
                if (pcm->offset == 0)
                        pa_stream_drop(pcm->stream);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/alsa-plugins-1.2.2/usb_stream/pcm_usb_stream.c 
new/alsa-plugins-1.2.5/usb_stream/pcm_usb_stream.c
--- old/alsa-plugins-1.2.2/usb_stream/pcm_usb_stream.c  2020-02-19 
10:35:42.000000000 +0100
+++ new/alsa-plugins-1.2.5/usb_stream/pcm_usb_stream.c  2021-05-27 
19:18:39.000000000 +0200
@@ -50,9 +50,8 @@
 
 #define FRAME_SIZE 6
 
-#define LCARD 32
 struct user_usb_stream {
-       char                    card[LCARD];
+       int                     card;
        unsigned                use;
        struct usb_stream       *s;
        void                    *write_area;
@@ -79,14 +78,14 @@
 static struct user_usb_stream *uus;
 static pthread_mutex_t uus_mutex = PTHREAD_MUTEX_INITIALIZER;
 
-static struct user_usb_stream *get_uus(const char *card)
+static struct user_usb_stream *get_uus(int card)
 {
        pthread_mutex_lock(&uus_mutex);
 
        struct user_usb_stream **l_uus = &uus,
                                *r_uus = NULL;
        while (*l_uus) {
-               if (strcmp((*l_uus)->card, card) == 0) {
+               if ((*l_uus)->card == card) {
                        r_uus = *l_uus;
                        r_uus->use++;
                        goto unlock;
@@ -96,7 +95,7 @@
        r_uus = calloc(1, sizeof(*r_uus));
        if (r_uus) {
                r_uus->use = 1;
-               strcpy(r_uus->card, card);
+               r_uus->card = card;
                *l_uus = r_uus;
        }
 
@@ -399,7 +398,7 @@
 }
 
 static int snd_pcm_us_open(snd_pcm_t **pcmp, const char *name,
-                                  const char *card,
+                                  int card,
                                   snd_pcm_stream_t stream, int mode,
                                   snd_pcm_uframes_t period_size,
                                   unsigned int rate)
@@ -408,15 +407,12 @@
        int err;
        char us_name[32];
 
-       if (strlen(card) >= LCARD)
-               return -EINVAL;
-
        assert(pcmp);
        us = calloc(1, sizeof(*us));
        if (!us)
                return -ENOMEM;
 
-       if (snprintf(us_name, sizeof(us_name), "hw:%s", card)
+       if (snprintf(us_name, sizeof(us_name), "hw:%d", card)
            >= (int)sizeof(us_name)) {
                fprintf(stderr, "%s: WARNING: USB_STREAM client name '%s' 
truncated to %d characters, might not be unique\n",
                        __func__, us_name, (int)strlen(us_name));
@@ -469,8 +465,7 @@
 SND_PCM_PLUGIN_DEFINE_FUNC(usb_stream)
 {
        snd_config_iterator_t i, next;
-       const char *card;
-       int err;
+       int err, card = -1;
        long period_size = 0, rate = 0;
        
        snd_config_for_each(i, next, conf) {
@@ -482,11 +477,11 @@
                if (strcmp(id, "comment") == 0 || strcmp(id, "type") == 0)
                        continue;
                if (strcmp(id, "card") == 0) {
-                       if (snd_config_get_type(n) != SND_CONFIG_TYPE_STRING) {
-                               SNDERR("Invalid type for %s", id);
+                       card = snd_config_get_card(n);
+                       if (card < 0) {
+                               SNDERR("Invalid card '%s'", id);
                                return -EINVAL;
                        }
-                       snd_config_get_string(n, &card);
                        continue;
                }
                if (strcmp(id, "period_size") == 0) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/alsa-plugins-1.2.2/version new/alsa-plugins-1.2.5/version
--- old/alsa-plugins-1.2.2/version      2020-02-19 11:26:56.000000000 +0100
+++ new/alsa-plugins-1.2.5/version      2021-05-27 22:06:40.000000000 +0200
@@ -1 +1 @@
-1.2.2
+1.2.5

Reply via email to