[packages/pipewire-wireplumber] fix hang/nosound in some pulseaudio apps; rel 2

atler atler at pld-linux.org
Thu Mar 10 01:50:03 CET 2022


commit 7f3de718c5c5929c87d37996a957e2daf2bad050
Author: Jan Palus <atler at pld-linux.org>
Date:   Thu Mar 10 01:48:07 2022 +0100

    fix hang/nosound in some pulseaudio apps; rel 2

 876.patch                 | 42 ++++++++++++++++++++++++++++++++++++++++++
 pipewire-wireplumber.spec |  4 +++-
 2 files changed, 45 insertions(+), 1 deletion(-)
---
diff --git a/pipewire-wireplumber.spec b/pipewire-wireplumber.spec
index 157d640..c6835bb 100644
--- a/pipewire-wireplumber.spec
+++ b/pipewire-wireplumber.spec
@@ -5,12 +5,13 @@
 Summary:	Session / policy manager implementation for PipeWire
 Name:		pipewire-wireplumber
 Version:	0.4.8
-Release:	1
+Release:	2
 License:	MIT
 Group:		Libraries
 Source0:	https://gitlab.freedesktop.org/pipewire/wireplumber/-/archive/%{version}/wireplumber-%{version}.tar.bz2
 # Source0-md5:	a5a405f0f8e973df9d644a20a8c0620b
 Patch0:		va_list.patch
+Patch1:		876.patch
 URL:		https://pipewire.org/
 # required for both docs and introspection
 BuildRequires:	doxygen >= 1.8.0
@@ -88,6 +89,7 @@ API documentation for PipeWire WirePlumber.
 %prep
 %setup -q -n wireplumber-%{version}
 %patch0 -p1
+%patch1 -p1
 
 %build
 %meson build \
diff --git a/876.patch b/876.patch
new file mode 100644
index 0000000..01fb154
--- /dev/null
+++ b/876.patch
@@ -0,0 +1,42 @@
+From afbc0ce57aac7aee8dc1651de4620f15c73dbace Mon Sep 17 00:00:00 2001
+From: Wim Taymans <wtaymans at redhat.com>
+Date: Mon, 21 Feb 2022 15:21:36 +0100
+Subject: [PATCH] si-audio-adapter: relax format parsing
+
+Some nodes can omit the format/rate/channels to indicate that they can
+deal with all possibilities and adapt to what they are linked to.
+
+See pipewire#876
+---
+ modules/module-si-audio-adapter.c | 11 ++---------
+ 1 file changed, 2 insertions(+), 9 deletions(-)
+
+diff --git a/modules/module-si-audio-adapter.c b/modules/module-si-audio-adapter.c
+index f1f62185..84e393fd 100644
+--- a/modules/module-si-audio-adapter.c
++++ b/modules/module-si-audio-adapter.c
+@@ -158,19 +158,12 @@ si_audio_adapter_find_format (WpSiAudioAdapter * self, WpNode * node)
+       struct spa_pod *position = NULL;
+       wp_spa_pod_fixate (pod);
+ 
+-      /* defaults */
+       spa_zero(raw_format);
+-      raw_format.format = SPA_AUDIO_FORMAT_F32;
+-      raw_format.rate = si_audio_adapter_get_default_clock_rate (self);
+-      raw_format.channels = 2;
+-      raw_format.position[0] = SPA_AUDIO_CHANNEL_FL;
+-      raw_format.position[1] = SPA_AUDIO_CHANNEL_FR;
+-
+       if (spa_pod_parse_object(wp_spa_pod_get_spa_pod (pod),
+                                SPA_TYPE_OBJECT_Format, NULL,
+-                               SPA_FORMAT_AUDIO_format,   SPA_POD_Id(&raw_format.format),
++                               SPA_FORMAT_AUDIO_format,   SPA_POD_OPT_Id(&raw_format.format),
+                                SPA_FORMAT_AUDIO_rate,     SPA_POD_OPT_Int(&raw_format.rate),
+-                               SPA_FORMAT_AUDIO_channels, SPA_POD_Int(&raw_format.channels),
++                               SPA_FORMAT_AUDIO_channels, SPA_POD_OPT_Int(&raw_format.channels),
+                                SPA_FORMAT_AUDIO_position, SPA_POD_OPT_Pod(&position)) < 0)
+         continue;
+ 
+-- 
+GitLab
+
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/pipewire-wireplumber.git/commitdiff/ce087de405fcf0a1d7e8967ff5bc461c9cf5b132



More information about the pld-cvs-commit mailing list