From 60233e30a78bbfc0e40340e7b7180a2286d1d985 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Wed, 17 Feb 2021 11:36:16 +0100 Subject: [PATCH] jack: tweak names a little Move the Description in the main node/port name. This then matches the device names seen in pavucontrol. Make the port alias contain the node nick. --- pipewire-jack/src/pipewire-jack.c | 4 ++-- src/modules/module-adapter/adapter.c | 18 +++++++++++++----- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/pipewire-jack/src/pipewire-jack.c b/pipewire-jack/src/pipewire-jack.c index 24cd81102..ee3334749 100644 --- a/pipewire-jack/src/pipewire-jack.c +++ b/pipewire-jack/src/pipewire-jack.c @@ -2113,8 +2113,8 @@ static void registry_event_global(void *data, uint32_t id, if ((str = spa_dict_lookup(props, PW_KEY_MEDIA_CLASS)) != NULL) o->node.is_bridge = strstr(str, "Bridge") != NULL; - if ((str = spa_dict_lookup(props, PW_KEY_NODE_NICK)) == NULL && - (str = spa_dict_lookup(props, PW_KEY_NODE_DESCRIPTION)) == NULL && + if ((str = spa_dict_lookup(props, PW_KEY_NODE_DESCRIPTION)) == NULL && + (str = spa_dict_lookup(props, PW_KEY_NODE_NICK)) == NULL && (str = node_name) == NULL) { str = "node"; } diff --git a/src/modules/module-adapter/adapter.c b/src/modules/module-adapter/adapter.c index 99f85497d..d5f4619ec 100644 --- a/src/modules/module-adapter/adapter.c +++ b/src/modules/module-adapter/adapter.c @@ -84,7 +84,7 @@ static void node_port_init(void *data, struct pw_impl_port *port) const struct pw_properties *old; enum pw_direction direction; struct pw_properties *new; - const char *str, *path, *node_name, *media_class; + const char *str, *path, *desc, *nick, *name, *node_name, *media_class; char position[8], *prefix; bool is_monitor, is_device, is_duplex, is_virtual; @@ -138,15 +138,23 @@ static void node_port_init(void *data, struct pw_impl_port *port) } } - if ((node_name = pw_properties_get(n->props, PW_KEY_NODE_DESCRIPTION)) == NULL && - (node_name = pw_properties_get(n->props, PW_KEY_NODE_NICK)) == NULL && - (node_name = pw_properties_get(n->props, PW_KEY_NODE_NAME)) == NULL) { + desc = pw_properties_get(n->props, PW_KEY_NODE_DESCRIPTION); + nick = pw_properties_get(n->props, PW_KEY_NODE_NICK); + name = pw_properties_get(n->props, PW_KEY_NODE_NAME); + + if ((node_name = desc) == NULL && (node_name = nick) == NULL && + (node_name = name) == NULL) node_name = "node"; - } + pw_properties_setf(new, PW_KEY_OBJECT_PATH, "%s:%s_%d", path ? path : node_name, prefix, pw_impl_port_get_id(port)); pw_properties_setf(new, PW_KEY_PORT_NAME, "%s_%s", prefix, str); + + if ((node_name = nick) == NULL && (node_name = desc) == NULL && + (node_name = name) == NULL) + node_name = "node"; + pw_properties_setf(new, PW_KEY_PORT_ALIAS, "%s:%s_%s", node_name, prefix, str);