From 9facfca45bd24767f1b7b31d16e1072d919663e8 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Fri, 29 Oct 2021 09:27:46 +0200 Subject: [PATCH] jack: add option to disable monitor ports Add a jack.show-monitor option (default true) that makes it possible to hide the monitor ports. Monitor ports are not enabled by default on JACK and maybe they also should not for PipeWire. Or maybe we need some tweaks for some apps. See #1760 --- pipewire-jack/src/pipewire-jack.c | 4 ++++ src/daemon/jack.conf.in | 1 + 2 files changed, 5 insertions(+) diff --git a/pipewire-jack/src/pipewire-jack.c b/pipewire-jack/src/pipewire-jack.c index 92e5af7fc..a46c2bcf8 100644 --- a/pipewire-jack/src/pipewire-jack.c +++ b/pipewire-jack/src/pipewire-jack.c @@ -386,6 +386,7 @@ struct client { unsigned int allow_mlock:1; unsigned int warn_mlock:1; unsigned int timeowner_conditional:1; + unsigned int show_monitor:1; unsigned int merge_monitor:1; unsigned int short_name:1; unsigned int filter_name:1; @@ -2684,6 +2685,8 @@ static void registry_event_global(void *data, uint32_t id, is_monitor = pw_properties_parse_bool(item->value); } } + if (is_monitor && !c->show_monitor) + goto exit; o = NULL; if (node_id == c->node_id) { @@ -3044,6 +3047,7 @@ jack_client_t * jack_client_open (const char *client_name, execute_match, client); } + client->show_monitor = pw_properties_get_bool(client->props, "jack.show-monitor", true); client->merge_monitor = pw_properties_get_bool(client->props, "jack.merge-monitor", false); client->short_name = pw_properties_get_bool(client->props, "jack.short-name", false); client->filter_name = pw_properties_get_bool(client->props, "jack.filter-name", false); diff --git a/src/daemon/jack.conf.in b/src/daemon/jack.conf.in index 72925eccb..efd5ff511 100644 --- a/src/daemon/jack.conf.in +++ b/src/daemon/jack.conf.in @@ -60,6 +60,7 @@ context.modules = [ jack.properties = { #node.latency = 1024/48000 #node.lock-quantum = false + #jack.show-monitor = true #jack.merge-monitor = false #jack.short-name = false #jack.filter-name = false