si-audio-endpoint: mark the nodes as passive instead of marking the links

This is a behavioural change in effect since pipewire 0.3.68, where
pipewire's link-factory ignores the link.passive property and the
node.pasive = in/out/true is used instead.
This commit is contained in:
George Kiagiadakis 2023-11-20 11:56:07 +02:00
parent 74d3b550d3
commit 5b1ff7377f
2 changed files with 3 additions and 1 deletions

View file

@ -237,6 +237,8 @@ si_audio_endpoint_enable_active (WpSessionItem *si, WpTransition *transition)
(self->direction == WP_DIRECTION_OUTPUT) ? "Capture" : "Playback");
g_autofree gchar *media = g_strdup_printf ("Audio/%s",
(self->direction == WP_DIRECTION_OUTPUT) ? "Source" : "Sink");
const gchar *passive =
(self->direction == WP_DIRECTION_OUTPUT) ? "in" : "out";
if (!wp_session_item_is_configured (si)) {
wp_transition_return_error (transition,
@ -252,6 +254,7 @@ si_audio_endpoint_enable_active (WpSessionItem *si, WpTransition *transition)
PW_KEY_MEDIA_CLASS, media,
PW_KEY_FACTORY_NAME, "support.null-audio-sink",
PW_KEY_NODE_DESCRIPTION, desc,
PW_KEY_NODE_PASSIVE, passive,
"monitor.channel-volumes", "true",
"wireplumber.is-endpoint", "true",
NULL));

View file

@ -110,7 +110,6 @@ function createLink (si_ep, si_target)
["in.item"] = in_item,
["out.item.port.context"] = "output",
["in.item.port.context"] = "input",
["passive"] = true,
["is.policy.endpoint.device.link"] = true,
} then
Log.warning (si_link, "failed to configure si-standard-link")