From: Jörn Nettingsmeier Date: Sat, 16 Feb 2019 15:33:29 +0000 (+0000) Subject: Add dummy option jack_autoconnect_option. X-Git-Tag: 3.3RC0~52^2~6 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=28ea6972af185ef44674a55512f943a32e57fb04;p=thirdparty%2Fshairport-sync.git Add dummy option jack_autoconnect_option. --- diff --git a/audio_jack.c b/audio_jack.c index 2e89ec95..cd90c796 100644 --- a/audio_jack.c +++ b/audio_jack.c @@ -173,6 +173,10 @@ int jack_init(__attribute__((unused)) int argc, __attribute__((unused)) char **a if (config_lookup_string(config.cfg, "jack.client_name", &str)) { config.jack_client_name = (char *)str; } + /* Get the autoconnect pattern. */ + if (config_lookup_string(config.cfg, "jack.autoconnect_pattern", &str)) { + config.jack_autoconnect_pattern = (char *)str; + } } if (config.jack_client_name == NULL) config.jack_client_name = strdup("shairport-sync"); @@ -207,6 +211,17 @@ int jack_init(__attribute__((unused)) int argc, __attribute__((unused)) char **a } else { debug(2, "JACK client %s activated sucessfully.", config.jack_client_name); } + + if (config.jack_autoconnect_pattern != NULL) { + debug(1, "config.jack_autoconnect_pattern is %s.", config.jack_autoconnect_pattern); + const char** port_list = jack_get_ports(client, config.jack_autoconnect_pattern, JACK_DEFAULT_AUDIO_TYPE, JackPortIsInput); + while (*port_list != NULL) { + debug(1, "Found matching JACK port %s.", *port_list); + port_list++; + // FIXME: implement actual connection, warn user if more than 2 hits. + } + } + pthread_mutex_unlock(&client_mutex); return 0;