forked from pool/wireplumber
Accepting request 946064 from home:alarrosa:branches:multimedia:libs
- Update to version 0.4.7: * Fixed a regression in 0.4.6 that caused the selection of the default audio sources and sinks to be delayed until some event, which effectively caused losing audio output in many circumstances (glfo#pipewire/wireplumber#148, glfo#pipewire/wireplumber#150, glfo#pipewire/wireplumber#151, glfo#pipewire/wireplumber#153) * Fixed a regression in 0.4.6 that caused the echo-cancellation pipewire module (and possibly others) to not work * A default sink or source is now not selected if there is no available route for it (glfo#pipewire/wireplumber#145) * Fixed an issue where some clients would wait for a bit while seeking (glfo#pipewire/wireplumber#146) * Fixed audio capture in the endpoints-based policy * Fixed an issue that would cause certain lua scripts to error out with older configuration files (glfo#pipewire/wireplumber#158) - Drop patches already included upstream: * 0001-policy-node-schedule-rescan-without-timeout-if-defined-target-is-not-found.patch * 0002-policy-node-find-best-linkable-if-default-one-cannot-be-linked.patch OBS-URL: https://build.opensuse.org/request/show/946064 OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/wireplumber?expand=0&rev=19
This commit is contained in:
parent
74b9876921
commit
1a9557b2d4
@ -1,46 +0,0 @@
|
||||
From afe71d7e48c28b0ae5cbd9327433e3c55c103fcb Mon Sep 17 00:00:00 2001
|
||||
From: Julian Bouzas <julian.bouzas@collabora.com>
|
||||
Date: Thu, 6 Jan 2022 10:53:38 -0500
|
||||
Subject: [PATCH] policy-node: schedule a rescan without timeout if defined
|
||||
target is not found
|
||||
|
||||
Fixes #146
|
||||
---
|
||||
src/scripts/policy-node.lua | 17 ++++-------------
|
||||
1 file changed, 4 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/src/scripts/policy-node.lua b/src/scripts/policy-node.lua
|
||||
index 8ca5a695..c273c1fe 100644
|
||||
--- a/src/scripts/policy-node.lua
|
||||
+++ b/src/scripts/policy-node.lua
|
||||
@@ -552,25 +552,16 @@ function handleLinkable (si)
|
||||
si_target = nil
|
||||
end
|
||||
|
||||
- -- wait up to 2 seconds for the requested target to become available
|
||||
- -- this is because the client may have already "seen" a target that we haven't
|
||||
- -- yet prepared, which leads to a race condition
|
||||
+ -- if the client has seen a target that we haven't yet prepared, schedule
|
||||
+ -- a rescan one more time and hope for the best
|
||||
local si_id = si.id
|
||||
if si_props["node.target"] and si_props["node.target"] ~= "-1"
|
||||
and not si_target
|
||||
and not si_flags[si_id].was_handled
|
||||
and not si_flags[si_id].done_waiting then
|
||||
- if not si_flags[si_id].timeout_source then
|
||||
- si_flags[si_id].timeout_source = Core.timeout_add(2000, function()
|
||||
- if si_flags[si_id] then
|
||||
- si_flags[si_id].done_waiting = true
|
||||
- si_flags[si_id].timeout_source = nil
|
||||
- scheduleRescan()
|
||||
- end
|
||||
- return false
|
||||
- end)
|
||||
- end
|
||||
Log.info (si, "... waiting for target")
|
||||
+ si_flags[si_id].done_waiting = true
|
||||
+ scheduleRescan()
|
||||
return
|
||||
end
|
||||
|
||||
--
|
@ -1,45 +0,0 @@
|
||||
From bee9827ae376b75feceea926b0afc727fecca51b Mon Sep 17 00:00:00 2001
|
||||
From: Julian Bouzas <julian.bouzas@collabora.com>
|
||||
Date: Fri, 7 Jan 2022 15:35:10 -0500
|
||||
Subject: [PATCH] policy-node: find best linkable if default one cannot be
|
||||
linked
|
||||
|
||||
Fixes issue with echo cancellation pipewire module.
|
||||
---
|
||||
src/scripts/policy-node.lua | 21 +++++++++++++++------
|
||||
1 file changed, 15 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/src/scripts/policy-node.lua b/src/scripts/policy-node.lua
|
||||
index 8ca5a695..3210f579 100644
|
||||
--- a/src/scripts/policy-node.lua
|
||||
+++ b/src/scripts/policy-node.lua
|
||||
@@ -477,13 +477,22 @@ function findBestLinkable (si)
|
||||
end
|
||||
|
||||
function findUndefinedTarget (si)
|
||||
- -- Find the default linkable if the default nodes module is loaded, otherwise
|
||||
- -- just find the best linkable based on priority and routes
|
||||
- if default_nodes ~= nil then
|
||||
- return findDefaultlinkable (si)
|
||||
- else
|
||||
- return findBestlinkable (si)
|
||||
+ -- Just find the best linkable if default nodes module is not loaded
|
||||
+ if default_nodes == nil then
|
||||
+ return findBestLinkable (si)
|
||||
end
|
||||
+
|
||||
+ -- Otherwise find the default linkable. If the default linkabke cannot link,
|
||||
+ -- we find the best one instead. We return nil if default does not exist.
|
||||
+ local si_target, can_passthrough = findDefaultlinkable (si)
|
||||
+ if si_target then
|
||||
+ if canLink (si.properties, si_target) then
|
||||
+ return si_target, can_passthrough
|
||||
+ else
|
||||
+ return findBestLinkable (si)
|
||||
+ end
|
||||
+ end
|
||||
+ return nil, nil
|
||||
end
|
||||
|
||||
function lookupLink (si_id, si_target_id)
|
||||
--
|
2
_service
2
_service
@ -4,7 +4,7 @@
|
||||
<param name="scm">git</param>
|
||||
<param name="url">https://gitlab.freedesktop.org/pipewire/wireplumber.git</param>
|
||||
<param name="changesgenerate">enable</param>
|
||||
<param name="revision">0.4.6</param>
|
||||
<param name="revision">0.4.7</param>
|
||||
<param name="versionformat">@PARENT_TAG@</param>
|
||||
<!--
|
||||
<param name="versionprefix">0.4.6+git</param>
|
||||
|
@ -1,4 +1,4 @@
|
||||
<servicedata>
|
||||
<service name="tar_scm">
|
||||
<param name="url">https://gitlab.freedesktop.org/pipewire/wireplumber.git</param>
|
||||
<param name="changesrevision">9a733293d7d39554d0c9b04741a64ece023dbac6</param></service></servicedata>
|
||||
<param name="changesrevision">afb177b5e0840d54dc41d02920702c3c9580ce02</param></service></servicedata>
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ed1b38dd1e18d48f7b8002deb81157fb402a9b04303b20b1ef46b6d43dfa45f9
|
||||
size 1798668
|
3
wireplumber-0.4.7.obscpio
Normal file
3
wireplumber-0.4.7.obscpio
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:1a0f4a842f03602120ee830085941a52d9a5bb4bd0326e353deb3283bfb1aa53
|
||||
size 1808908
|
@ -1,3 +1,27 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Jan 13 09:56:28 UTC 2022 - Antonio Larrosa <alarrosa@suse.com>
|
||||
|
||||
- Update to version 0.4.7:
|
||||
* Fixed a regression in 0.4.6 that caused the selection of the
|
||||
default audio sources and sinks to be delayed until some event,
|
||||
which effectively caused losing audio output in many
|
||||
circumstances (glfo#pipewire/wireplumber#148,
|
||||
glfo#pipewire/wireplumber#150, glfo#pipewire/wireplumber#151,
|
||||
glfo#pipewire/wireplumber#153)
|
||||
* Fixed a regression in 0.4.6 that caused the echo-cancellation
|
||||
pipewire module (and possibly others) to not work
|
||||
* A default sink or source is now not selected if there is no
|
||||
available route for it (glfo#pipewire/wireplumber#145)
|
||||
* Fixed an issue where some clients would wait for a bit while
|
||||
seeking (glfo#pipewire/wireplumber#146)
|
||||
* Fixed audio capture in the endpoints-based policy
|
||||
* Fixed an issue that would cause certain lua scripts to error
|
||||
out with older configuration files
|
||||
(glfo#pipewire/wireplumber#158)
|
||||
- Drop patches already included upstream:
|
||||
* 0001-policy-node-schedule-rescan-without-timeout-if-defined-target-is-not-found.patch
|
||||
* 0002-policy-node-find-best-linkable-if-default-one-cannot-be-linked.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jan 10 09:50:15 UTC 2022 - Antonio Larrosa <alarrosa@suse.com>
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
name: wireplumber
|
||||
version: 0.4.6
|
||||
mtime: 1641485511
|
||||
commit: 9a733293d7d39554d0c9b04741a64ece023dbac6
|
||||
version: 0.4.7
|
||||
mtime: 1642066064
|
||||
commit: afb177b5e0840d54dc41d02920702c3c9580ce02
|
||||
|
@ -22,7 +22,7 @@
|
||||
%define sover 0
|
||||
%define libwireplumber libwireplumber-%{apiver_str}-%{sover}
|
||||
Name: wireplumber
|
||||
Version: 0.4.6
|
||||
Version: 0.4.7
|
||||
Release: 0
|
||||
Summary: Session / policy manager implementation for PipeWire
|
||||
License: MIT
|
||||
@ -30,8 +30,6 @@ Group: Development/Libraries/C and C++
|
||||
URL: https://gitlab.freedesktop.org/pipewire/wireplumber
|
||||
Source0: wireplumber-%{version}.tar.xz
|
||||
Source1: split-config-file.py
|
||||
Patch0: 0001-policy-node-schedule-rescan-without-timeout-if-defined-target-is-not-found.patch
|
||||
Patch1: 0002-policy-node-find-best-linkable-if-default-one-cannot-be-linked.patch
|
||||
Patch100: reduce-meson-required-version.patch
|
||||
# docs
|
||||
BuildRequires: doxygen
|
||||
|
Loading…
Reference in New Issue
Block a user