mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-04 13:29:59 -05:00
alsa: when creating alsa sinks/sources include mapping name in device name to allow profiles mit multiple sinks or multiple sources
This commit is contained in:
parent
8d3362cec6
commit
34b48887ef
2 changed files with 14 additions and 6 deletions
|
|
@ -1335,7 +1335,7 @@ finish:
|
||||||
pa_log_debug("Thread shutting down");
|
pa_log_debug("Thread shutting down");
|
||||||
}
|
}
|
||||||
|
|
||||||
static void set_sink_name(pa_sink_new_data *data, pa_modargs *ma, const char *device_id, const char *device_name) {
|
static void set_sink_name(pa_sink_new_data *data, pa_modargs *ma, const char *device_id, const char *device_name, pa_alsa_mapping *mapping) {
|
||||||
const char *n;
|
const char *n;
|
||||||
char *t;
|
char *t;
|
||||||
|
|
||||||
|
|
@ -1356,7 +1356,11 @@ static void set_sink_name(pa_sink_new_data *data, pa_modargs *ma, const char *de
|
||||||
data->namereg_fail = FALSE;
|
data->namereg_fail = FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
t = pa_sprintf_malloc("alsa_output.%s", n);
|
if (mapping)
|
||||||
|
t = pa_sprintf_malloc("alsa_output.%s.%s", n, mapping->name);
|
||||||
|
else
|
||||||
|
t = pa_sprintf_malloc("alsa_output.%s", n);
|
||||||
|
|
||||||
pa_sink_new_data_set_name(data, t);
|
pa_sink_new_data_set_name(data, t);
|
||||||
pa_xfree(t);
|
pa_xfree(t);
|
||||||
}
|
}
|
||||||
|
|
@ -1679,7 +1683,7 @@ pa_sink *pa_alsa_sink_new(pa_module *m, pa_modargs *ma, const char*driver, pa_ca
|
||||||
data.driver = driver;
|
data.driver = driver;
|
||||||
data.module = m;
|
data.module = m;
|
||||||
data.card = card;
|
data.card = card;
|
||||||
set_sink_name(&data, ma, dev_id, u->device_name);
|
set_sink_name(&data, ma, dev_id, u->device_name, mapping);
|
||||||
pa_sink_new_data_set_sample_spec(&data, &ss);
|
pa_sink_new_data_set_sample_spec(&data, &ss);
|
||||||
pa_sink_new_data_set_channel_map(&data, &map);
|
pa_sink_new_data_set_channel_map(&data, &map);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1187,7 +1187,7 @@ finish:
|
||||||
pa_log_debug("Thread shutting down");
|
pa_log_debug("Thread shutting down");
|
||||||
}
|
}
|
||||||
|
|
||||||
static void set_source_name(pa_source_new_data *data, pa_modargs *ma, const char *device_id, const char *device_name) {
|
static void set_source_name(pa_source_new_data *data, pa_modargs *ma, const char *device_id, const char *device_name, pa_alsa_mapping *mapping) {
|
||||||
const char *n;
|
const char *n;
|
||||||
char *t;
|
char *t;
|
||||||
|
|
||||||
|
|
@ -1208,7 +1208,11 @@ static void set_source_name(pa_source_new_data *data, pa_modargs *ma, const char
|
||||||
data->namereg_fail = FALSE;
|
data->namereg_fail = FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
t = pa_sprintf_malloc("alsa_input.%s", n);
|
if (mapping)
|
||||||
|
t = pa_sprintf_malloc("alsa_input.%s.%s", n, mapping->name);
|
||||||
|
else
|
||||||
|
t = pa_sprintf_malloc("alsa_input.%s", n);
|
||||||
|
|
||||||
pa_source_new_data_set_name(data, t);
|
pa_source_new_data_set_name(data, t);
|
||||||
pa_xfree(t);
|
pa_xfree(t);
|
||||||
}
|
}
|
||||||
|
|
@ -1528,7 +1532,7 @@ pa_source *pa_alsa_source_new(pa_module *m, pa_modargs *ma, const char*driver, p
|
||||||
data.driver = driver;
|
data.driver = driver;
|
||||||
data.module = m;
|
data.module = m;
|
||||||
data.card = card;
|
data.card = card;
|
||||||
set_source_name(&data, ma, dev_id, u->device_name);
|
set_source_name(&data, ma, dev_id, u->device_name, mapping);
|
||||||
pa_source_new_data_set_sample_spec(&data, &ss);
|
pa_source_new_data_set_sample_spec(&data, &ss);
|
||||||
pa_source_new_data_set_channel_map(&data, &map);
|
pa_source_new_data_set_channel_map(&data, &map);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue