diff options
Diffstat (limited to 'media-video/wireplumber')
-rw-r--r-- | media-video/wireplumber/Manifest | 1 | ||||
-rw-r--r-- | media-video/wireplumber/files/wireplumber-0.5.6-bluetooth-only-autoswitch.patch | 64 |
2 files changed, 0 insertions, 65 deletions
diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest index 5df71f52ee58..b3c45ff877bb 100644 --- a/media-video/wireplumber/Manifest +++ b/media-video/wireplumber/Manifest @@ -1,4 +1,3 @@ -AUX wireplumber-0.5.6-bluetooth-only-autoswitch.patch 3011 BLAKE2B 95f015a1c9e2b93bece9377a6ba072fe581053a17dc8586bed1cfb5a5d4eaaaef1713ab5e289f903ac6b47c8bbf958bba2dfc675a866b6bdb2ccc2ce9690e5be SHA512 39b0efe430f6ca7922b01e3d161e8a19ae0773687efe37207f389b96e06973e3bae1149c7ade7ded67a452a64158095d013d2fc78c1d22c612d0313d34a9cebb AUX wireplumber-0.5.6-config-disable-sound-server-parts.patch 559 BLAKE2B 8d71fadbfb8b45eeede3c3b322e11205f4b31af098f0798cc9bef2ee92eb74ce5f811233981351097b4da02c70ce42bcd0033fd951a89f8bc8218468d09b235c SHA512 1e6deb4ce2452f22fca6722c22cfa6a61794f8612c9b2baf6ac1a9b4cf6bdae84e3685e1d8957db3121d304fd5842de47a0f319b755dc349f354f55e118d4750 AUX wireplumber.initd 287 BLAKE2B 915e91e428de674b46aab566c6bb62d402dc34c1f16d353150e4b9810356de77e8c9f7c12736bc86330a95481ad32521c6b9b98b5ad48fbc3993f1d09d9c1c59 SHA512 7828ce215125c33fc0c4a5832b72129a61bc704e23328c7126300288d60568350f0b937dbff20eef6942283f01106ead633ca71910c7db0e04ab1ffd5f47d963 DIST wireplumber-0.5.7.tar.bz2 416878 BLAKE2B 0def07be7c3652ef76d4af9167875a0d26440c33ad8427d9594922e34dd44fb422e63861931dd7d8861d97698d8752c01ff3bedd68445009f55c728dfd4224d1 SHA512 a9f47664359ec8e483a3b16a1ba6b6e6bea3187bd17536f1ee2a756a0b217ebc401d4f21044b4c1caac83f08cead71539cf96705968aac80289cfe7e70857c56 diff --git a/media-video/wireplumber/files/wireplumber-0.5.6-bluetooth-only-autoswitch.patch b/media-video/wireplumber/files/wireplumber-0.5.6-bluetooth-only-autoswitch.patch deleted file mode 100644 index 779a4d4f21bf..000000000000 --- a/media-video/wireplumber/files/wireplumber-0.5.6-bluetooth-only-autoswitch.patch +++ /dev/null @@ -1,64 +0,0 @@ -https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/715 -https://gitlab.freedesktop.org/pipewire/wireplumber/-/merge_requests/669 -https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/b68a6794cd5c3702a2144be60c41a9ca982c416b - -From b68a6794cd5c3702a2144be60c41a9ca982c416b Mon Sep 17 00:00:00 2001 -From: Pauli Virtanen <pav@iki.fi> -Date: Sun, 8 Sep 2024 20:22:41 +0300 -Subject: [PATCH] autoswitch-bluetooth-profile: switch only Bluetooth devices - -Handle only devices associated with Bluetooth loopback nodes. - -Make sure the node.link-group iteration cannot get stuck if there is a -loop in the link graph. ---- a/src/scripts/device/autoswitch-bluetooth-profile.lua -+++ b/src/scripts/device/autoswitch-bluetooth-profile.lua -@@ -301,13 +301,14 @@ end - - -- We consider a Stream of interest if it is linked to a bluetooth loopback - -- source filter --local function checkStreamStatus (stream, node_om) -+local function checkStreamStatus (stream, node_om, visited_link_groups) - -- check if the stream is linked to a bluetooth loopback source - local stream_id = tonumber(stream["bound-id"]) - local peer_id = lutils.getNodePeerId (stream_id) - if peer_id ~= nil then - local bt_node = node_om:lookup { -- Constraint { "bound-id", "=", peer_id, type = "gobject" } -+ Constraint { "bound-id", "=", peer_id, type = "gobject" }, -+ Constraint { "bluez5.loopback", "=", "true", type = "pw" } - } - if bt_node ~= nil then - local dev_id = bt_node.properties["device.id"] -@@ -325,18 +326,27 @@ local function checkStreamStatus (stream, node_om) - else - -- Check if it is linked to a filter main node, and recursively advance if so - local filter_main_node = node_om:lookup { -- Constraint { "bound-id", "=", peer_id, type = "gobject" } -+ Constraint { "bound-id", "=", peer_id, type = "gobject" }, -+ Constraint { "node.link-group", "+", type = "pw" } - } - if filter_main_node ~= nil then - -- Now check all stream nodes for this filter - local filter_link_group = filter_main_node.properties ["node.link-group"] -+ if visited_link_groups == nil then -+ visited_link_groups = {} -+ end -+ if visited_link_groups [filter_link_group] then -+ return nil -+ else -+ visited_link_groups [filter_link_group] = true -+ end - for filter_stream_node in node_om:iterate { - Constraint { "media.class", "matches", "Stream/Input/Audio", type = "pw-global" }, - Constraint { "stream.monitor", "!", "true", type = "pw" }, - Constraint { "bluez5.loopback", "!", "true", type = "pw" }, - Constraint { "node.link-group", "=", filter_link_group, type = "pw" } - } do -- local dev_id = checkStreamStatus (filter_stream_node, node_om) -+ local dev_id = checkStreamStatus (filter_stream_node, node_om, visited_link_groups) - if dev_id ~= nil then - return dev_id - end --- -GitLab |