diff --git a/0001-jack-update-bufsize-and-samplerate-when-skipping-not.patch b/0001-jack-update-bufsize-and-samplerate-when-skipping-not.patch deleted file mode 100644 index 0ad6a86..0000000 --- a/0001-jack-update-bufsize-and-samplerate-when-skipping-not.patch +++ /dev/null @@ -1,50 +0,0 @@ -From 1b823f1bc3363c496758a9230c9f5d4ce4491815 Mon Sep 17 00:00:00 2001 -From: Wim Taymans -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 - diff --git a/pipewire.spec b/pipewire.spec index d543c77..f81bec1 100644 --- a/pipewire.spec +++ b/pipewire.spec @@ -1,6 +1,6 @@ %global majorversion 0 %global minorversion 3 -%global microversion 71 +%global microversion 72 %global apiversion 0.3 %global spaversion 0.2 @@ -9,7 +9,7 @@ %global ms_version 0.4.2 # For rpmdev-bumpspec and releng automation -%global baserelease 4 +%global baserelease 1 #global snapdate 20210107 #global gitcommit b17db2cebc1a5ab2c01851d29c05f79cd2f262bb @@ -47,6 +47,12 @@ %bcond_without roc %endif +%if 0%{?rhel} || ("%{_arch}" == "s390x") +%bcond_with ffado +%else +%bcond_without ffado +%endif + # Disabled for RHEL < 10 and Fedora < 36 %if (0%{?rhel} && 0%{?rhel} < 10) || (0%{?fedora} && 0%{?fedora} < 36) || ("%{_arch}" == "s390x") || ("%{_arch}" == "ppc64le") %bcond_with libcamera_plugin @@ -70,7 +76,6 @@ Source0: https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/%{ver Source1: pipewire.sysusers ## upstream patches -Patch0001: 0001-jack-update-bufsize-and-samplerate-when-skipping-not.patch ## upstreamable patches @@ -127,6 +132,9 @@ BuildRequires: libunwind-devel BuildRequires: openfec-devel BuildRequires: sox-devel %endif +%if %{with ffado} +BuildRequires: libffado-devel +%endif BuildRequires: libuv-devel BuildRequires: speexdsp-devel %if %{with libmysofa} @@ -212,12 +220,10 @@ This package contains an ALSA plugin for the PipeWire media server. %endif %if %{with jack} -%package jack-audio-connection-kit -Summary: PipeWire JACK implementation +%package jack-audio-connection-kit-libs +Summary: PipeWire JACK implementation libraries License: MIT Recommends: %{name}%{?_isa} = %{version}-%{release} -Conflicts: jack-audio-connection-kit -Conflicts: jack-audio-connection-kit-dbus # Fixed jack subpackages Conflicts: %{name}-libjack < 0.3.13-6 Conflicts: %{name}-jack-audio-connection-kit < 0.3.13-6 @@ -225,6 +231,18 @@ Conflicts: %{name}-jack-audio-connection-kit < 0.3.13-6 Obsoletes: %{name}-libjack < 0.3.19-2 Provides: %{name}-libjack = %{version}-%{release} Provides: %{name}-libjack%{?_isa} = %{version}-%{release} + +%description jack-audio-connection-kit-libs +This package provides a JACK implementation libraries based on PipeWire + +%package jack-audio-connection-kit +Summary: PipeWire JACK implementation +License: MIT +Recommends: %{name}%{?_isa} = %{version}-%{release} +Requires: %{name}-jack-audio-connection-kit-libs%{?_isa} = %{version}-%{release} +Conflicts: jack-audio-connection-kit +Conflicts: jack-audio-connection-kit-dbus +# Replaces libjack subpackage %if ! (0%{?fedora} && 0%{?fedora} < 34) # Ensure this is provided by default to route all audio Supplements: %{name} = %{version}-%{release} @@ -241,9 +259,9 @@ This package provides a JACK implementation based on PipeWire %package jack-audio-connection-kit-devel Summary: Development files for %{name}-jack-audio-connection-kit License: MIT -Requires: %{name}-jack-audio-connection-kit%{?_isa} = %{version}-%{release} +Requires: %{name}-jack-audio-connection-kit-libs%{?_isa} = %{version}-%{release} Conflicts: jack-audio-connection-kit-devel -Enhances: %{name}-jack-audio-connection-kit +Enhances: %{name}-jack-audio-connection-kit-libs %description jack-audio-connection-kit-devel This package provides development files for building JACK applications @@ -367,6 +385,7 @@ cp %{SOURCE1} subprojects/packagefiles/ %{!?with_libmysofa:-D libmysofa=disabled} \ %{!?with_lv2:-D lv2=disabled} \ %{!?with_roc:-D roc=disabled} \ + %{!?with_ffado:-D libffado=disabled} \ %{nil} %meson_build @@ -466,10 +485,15 @@ systemctl --no-reload preset --global pipewire.socket >/dev/null 2>&1 || : %{_libdir}/pipewire-%{apiversion}/libpipewire-module-combine-stream.so %{_libdir}/pipewire-%{apiversion}/libpipewire-module-echo-cancel.so %{_libdir}/pipewire-%{apiversion}/libpipewire-module-fallback-sink.so +%if %{with ffado} +%{_libdir}/pipewire-%{apiversion}/libpipewire-module-ffado-driver.so +%endif %{_libdir}/pipewire-%{apiversion}/libpipewire-module-filter-chain.so %{_libdir}/pipewire-%{apiversion}/libpipewire-module-link-factory.so %{_libdir}/pipewire-%{apiversion}/libpipewire-module-loopback.so %{_libdir}/pipewire-%{apiversion}/libpipewire-module-metadata.so +%{_libdir}/pipewire-%{apiversion}/libpipewire-module-netjack2-driver.so +%{_libdir}/pipewire-%{apiversion}/libpipewire-module-netjack2-manager.so %{_libdir}/pipewire-%{apiversion}/libpipewire-module-pipe-tunnel.so %{_libdir}/pipewire-%{apiversion}/libpipewire-module-portal.so %{_libdir}/pipewire-%{apiversion}/libpipewire-module-profiler.so @@ -583,13 +607,15 @@ systemctl --no-reload preset --global pipewire.socket >/dev/null 2>&1 || : %endif %if %{with jack} -%files jack-audio-connection-kit +%files jack-audio-connection-kit-libs %{_bindir}/pw-jack %{_mandir}/man1/pw-jack.1* %{_libdir}/pipewire-%{apiversion}/jack/libjack.so.* %{_libdir}/pipewire-%{apiversion}/jack/libjacknet.so.* %{_libdir}/pipewire-%{apiversion}/jack/libjackserver.so.* %{_datadir}/pipewire/jack.conf + +%files jack-audio-connection-kit %{_sysconfdir}/ld.so.conf.d/pipewire-jack-%{_arch}.conf %files jack-audio-connection-kit-devel @@ -631,6 +657,11 @@ systemctl --no-reload preset --global pipewire.socket >/dev/null 2>&1 || : %{_libdir}/pipewire-%{apiversion}/libpipewire-module-x11-bell.so %changelog +* Mon Jun 26 2023 Wim Taymans - 0.3.72-1 +- Update version to 0.3.72 +- The jack libraries and ld.so override were split so that jack can + be installed together with the pipewire-jack libraries and pw-jack. + * Thu Jun 15 2023 Yaakov Selkowitz - 0.3.71-4 - Disable libmysofa, lv2, roc in RHEL builds diff --git a/sources b/sources index 7679bae..73dee75 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (pipewire-0.3.71.tar.gz) = aa19fc89f6f27046067b764ceb2052f5dace74fd7099afaf6e5b25c00b7e846bf4bd6332ac733ad4a48f4601cadaab6db679de9b4fc5ab3b01d078aee0ff7413 +SHA512 (pipewire-0.3.72.tar.gz) = f3f17cfe949f47e0745b0474e35b5091116182327dd331a69aaa2b4f3e084f70d0cd770018cb63eb724cca9458afac6ce9db1d882b09f84ac8fe77fcfb354ffe