Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package pipewire for openSUSE:Factory 
checked in at 2023-05-30 22:01:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/pipewire (Old)
 and      /work/SRC/openSUSE:Factory/.pipewire.new.1533 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "pipewire"

Tue May 30 22:01:11 2023 rev:84 rq:1089545 version:0.3.71

Changes:
--------
--- /work/SRC/openSUSE:Factory/pipewire/pipewire.changes        2023-05-19 
11:54:38.382960401 +0200
+++ /work/SRC/openSUSE:Factory/.pipewire.new.1533/pipewire.changes      
2023-05-30 22:01:18.702610458 +0200
@@ -1,0 +2,11 @@
+Fri May 19 17:26:12 UTC 2023 - Alexei Sorokin <sor.ale...@meowr.ru>
+
+- Add patch from upstream to fix JACK buffersize updates:
+  * 0001-jack-update-bufsize-and-samplerate-when-skipping-not.patch
+- Create a pipewire-jack package that provides jack-daemon (and
+  conflicts with any other) and requires the pipewire-libjack
+  library.
+  Move the ld configuration from pipewire-libjack, so that only
+  pipewire-jack forces PipeWire to be the default JACK.
+
+-------------------------------------------------------------------

New:
----
  0001-jack-update-bufsize-and-samplerate-when-skipping-not.patch

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

Other differences:
------------------
++++++ pipewire.spec ++++++
--- /var/tmp/diff_new_pack.3OiswQ/_old  2023-05-30 22:01:19.298613971 +0200
+++ /var/tmp/diff_new_pack.3OiswQ/_new  2023-05-30 22:01:19.302613994 +0200
@@ -70,6 +70,8 @@
 Source99:       baselibs.conf
 # PATCH-FIX-OPENSUSE reduce-meson-dependency.patch
 Patch0:         reduce-meson-dependency.patch
+# PATCH-FIX-UPSTREAM 
0001-jack-update-bufsize-and-samplerate-when-skipping-not.patch
+Patch1:         0001-jack-update-bufsize-and-samplerate-when-skipping-not.patch
 BuildRequires:  docutils
 BuildRequires:  doxygen
 BuildRequires:  fdupes
@@ -147,7 +149,6 @@
 Requires:       %{name}-tools = %{version}
 Requires:       rtkit
 Suggests:       wireplumber
-Suggests:       pipewire-libjack-%{apiver_str}
 %{?systemd_ordering}
 
 %description
@@ -186,7 +187,6 @@
 Group:          Development/Libraries/C and C++
 Requires(post): update-alternatives
 Requires(postun):update-alternatives
-Conflicts:      jack
 Conflicts:      libjack0
 Conflicts:      libjacknet0
 Conflicts:      libjackserver0
@@ -344,18 +344,32 @@
 Requires:       pulseaudio-utils
 Recommends:     pipewire-alsa
 Conflicts:      pulseaudio
-Conflicts:      pulseaudio-daemon
 # Virtual Provides to support swapping between PipeWire-PA and PA
+Conflicts:      pulseaudio-daemon
 Provides:       pulseaudio-daemon
 %if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150400
 Requires(post): pulseaudio-setup
 %endif
 #Provides:       pulseaudio-module-bluetooth
-#Provides:       pulseaudio-module-jack
 
 %description pulseaudio
 This package provides a PulseAudio implementation based on PipeWire
 
+%package jack
+Summary:        PipeWire JACK implementation
+Group:          Development/Libraries/C and C++
+Requires:       %{libpipewire} >= %{version}-%{release}
+Requires:       %{name} >= %{version}-%{release}
+Requires:       pipewire-libjack-%{apiver_str}
+Recommends:     jack-dbus
+# Virtual Provides to support swapping between PipeWire-JACK and JACKd
+Conflicts:      jack-daemon
+Provides:       jack-daemon
+#Provides:       pulseaudio-module-jack
+
+%description jack
+This package provides a JACK implementation based on PipeWire
+
 %lang_package
 
 %prep
@@ -363,6 +377,7 @@
 %if %{?pkg_vcmp:%{pkg_vcmp meson <= 0.61.0}}
 %patch0 -p1
 %endif
+%patch1 -p1
 
 %build
 %if %{pkg_vcmp gcc < 8}
@@ -537,6 +552,9 @@
 %postun pulseaudio
 %systemd_user_postun pipewire-pulse.service pipewire-pulse.socket
 
+%post jack -p /sbin/ldconfig
+%postun jack -p /sbin/ldconfig
+
 %post   -n %{libpipewire} -p /sbin/ldconfig
 %postun -n %{libpipewire} -p /sbin/ldconfig
 
@@ -643,8 +661,6 @@
 %{_bindir}/pw-jack
 %{_mandir}/man1/pw-jack-%{apiver}.1%{?ext_man}
 %{_mandir}/man1/pw-jack.1%{?ext_man}
-%{_datadir}/pipewire/jack.conf
-%config %{_sysconfdir}/ld.so.conf.d/pipewire-jack-%{_arch}.conf
 
 %files libjack-%{apiver_str}-devel
 %{_libdir}/pipewire-%{apiver}/jack/libjack.so
@@ -728,6 +744,10 @@
 %config(noreplace) %{_sysconfdir}/alsa/conf.d/50-pipewire.conf
 %config(noreplace) %{_sysconfdir}/alsa/conf.d/99-pipewire-default.conf
 
+%files jack
+%config %{_sysconfdir}/ld.so.conf.d/pipewire-jack-%{_arch}.conf
+%{_datadir}/pipewire/jack.conf
+
 %files lang -f %{name}.lang
 
 %changelog

++++++ 0001-jack-update-bufsize-and-samplerate-when-skipping-not.patch ++++++
>From 1b823f1bc3363c496758a9230c9f5d4ce4491815 Mon Sep 17 00:00:00 2001
From: Wim Taymans <wtaym...@redhat.com>
Date: Thu, 18 May 2023 09:59:26 +0200
Subject: [PATCH] jack: update bufsize and samplerate when skipping notify

When we skip the notify because we are not active or we don't have a
callback, still update the buffer_size and sample_rate fields or else
we will keep on trying forever.

Fixes #3226
---
 pipewire-jack/src/pipewire-jack.c | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/pipewire-jack/src/pipewire-jack.c 
b/pipewire-jack/src/pipewire-jack.c
index ee82425a9..ed21ccf76 100644
--- a/pipewire-jack/src/pipewire-jack.c
+++ b/pipewire-jack/src/pipewire-jack.c
@@ -1027,8 +1027,6 @@ static int queue_notify(struct client *c, int type, 
struct object *o, int arg1,
        struct notify *notify;
        bool emit = false;;
 
-       if ((type & NOTIFY_ACTIVE_FLAG) && !c->active)
-               return 0;
        switch (type) {
        case NOTIFY_TYPE_REGISTRATION:
                emit = c->registration_callback != NULL && o != NULL;
@@ -1060,8 +1058,18 @@ static int queue_notify(struct client *c, int type, 
struct object *o, int arg1,
        default:
                break;
        }
+       if ((type & NOTIFY_ACTIVE_FLAG) && !c->active)
+               emit = false;
        if (!emit) {
-               pw_log_debug("%p: skip notify %d", c, type);
+               switch (type) {
+               case NOTIFY_TYPE_BUFFER_FRAMES:
+                       c->buffer_frames = arg1;
+                       break;
+               case NOTIFY_TYPE_SAMPLE_RATE:
+                       c->sample_rate = arg1;
+                       break;
+               }
+               pw_log_debug("%p: skip notify %08x active:%d", c, type, 
c->active);
                if (o != NULL && arg1 == 0 && o->removing) {
                        o->removing = false;
                        free_object(c, o);
-- 
2.40.1

Reply via email to