Accepting request 960946 from home:XRevan86

- Add two patches from upstream:
  * 0002-policy-bluetooth-fix-string.find-crash-with-nil-string.patch
  * 0003-si-audio-adapter-relax-format-parsing.patch

OBS-URL: https://build.opensuse.org/request/show/960946
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/wireplumber?expand=0&rev=33
This commit is contained in:
Antonio Larrosa 2022-03-11 07:05:15 +00:00 committed by Git OBS Bridge
parent 3a42ff293f
commit 79a19a2d78
4 changed files with 88 additions and 6 deletions

View File

@ -0,0 +1,26 @@
From c4c5ca8e2215e5fc295b39af4504c43ed3fe176f Mon Sep 17 00:00:00 2001
From: George Kiagiadakis <george.kiagiadakis@collabora.com>
Date: Mon, 14 Feb 2022 10:38:51 +0200
Subject: [PATCH] policy-bluetooth: fix string.find crash with nil string
Fixes #193
---
src/scripts/policy-bluetooth.lua | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/scripts/policy-bluetooth.lua b/src/scripts/policy-bluetooth.lua
index 24fbffbb..f8f69a14 100644
--- a/src/scripts/policy-bluetooth.lua
+++ b/src/scripts/policy-bluetooth.lua
@@ -118,7 +118,7 @@ local function isSwitched(device)
end
local function isBluez5AudioSink(sink_name)
- if string.find(sink_name, "bluez_output.") ~= nil then
+ if sink_name and string.find(sink_name, "bluez_output.") ~= nil then
return true
end
return false
--
GitLab

View File

@ -0,0 +1,43 @@
From afbc0ce57aac7aee8dc1651de4620f15c73dbace Mon Sep 17 00:00:00 2001
From: Wim Taymans <wtaymans@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 f1f6218..84e393f 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

View File

@ -1,3 +1,14 @@
-------------------------------------------------------------------
Thu Mar 10 12:14:13 UTC 2022 - Alexei Sorokin <sor.alexei@meowr.ru>
- Add patch from upstream to fix a crash on tty switch
(glfo#pipewire/wireplumber#193):
* 0002-policy-bluetooth-fix-string.find-crash-with-nil-string.patch
- Add patch from upstream to fix issues with PulseAudio support with
PipeWire 0.3.48+ (glfo#pipewire/pipewire#2189):
* 0003-si-audio-adapter-relax-format-parsing.patch
- Some spec clean-up.
-------------------------------------------------------------------
Fri Feb 11 08:09:05 UTC 2022 - Antonio Larrosa <alarrosa@suse.com>

View File

@ -32,17 +32,18 @@ Source0: wireplumber-%{version}.tar.xz
Source1: split-config-file.py
Patch0: 0001-spa-json-fix-va_list-APIs-for-different-architectures.patch
Patch1: 0001-restore-stream-do-not-crash-if-config_properties-is-nil.patch
Patch2: 0002-policy-bluetooth-fix-string.find-crash-with-nil-string.patch
Patch3: 0003-si-audio-adapter-relax-format-parsing.patch
# PATCH-FIX-OPENSUSE reduce-meson-dependency.patch
Patch100: reduce-meson-required-version.patch
# docs
BuildRequires: doxygen
BuildRequires: graphviz
BuildRequires: python3-lxml
# /docs
BuildRequires: cmake
BuildRequires: fdupes
BuildRequires: meson >= 0.54.0
BuildRequires: pipewire >= %{pipewire_minimum_version}
#!BuildIgnore: pipewire-session-manager
BuildRequires: pipewire-spa-plugins-0_2 >= %{pipewire_minimum_version}
BuildRequires: pkgconfig
BuildRequires: python3-base
@ -58,16 +59,17 @@ BuildRequires: pkgconfig(libpipewire-0.3) >= %{pipewire_minimum_version}
BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(lua)
BuildRequires: pkgconfig(systemd)
#!BuildIgnore: pipewire-session-manager
# Setup ALSA devices if pipewire handles pulseaudio connections.
Requires: (%{name}-audio if pipewire-pulseaudio)
Requires: pipewire >= %{pipewire_minimum_version}
Provides: pipewire-session-manager
%if 0%{?suse_version} <= 1500
BuildRequires: gcc9
BuildRequires: gcc9-c++
%else
BuildRequires: gcc-c++
%endif
Provides: pipewire-session-manager
# Setup ALSA devices if pipewire handles pulseaudio connections.
Requires: (%{name}-audio if pipewire-pulseaudio)
%description
WirePlumber is a modular session / policy manager for PipeWire and
@ -80,8 +82,8 @@ Summary: Session / policy manager implementation for PipeWire (audio supp
Group: Development/Libraries/C and C++
Requires: %{libwireplumber} = %{version}
Requires: %{name} = %{version}
Conflicts: pulseaudio
Recommends: pipewire-pulseaudio
Conflicts: pulseaudio
%description audio
WirePlumber is a modular session / policy manager for PipeWire and