audio-dsp: allow mode to be set with a property

This commit is contained in:
Julian Bouzas 2019-06-27 12:44:39 -04:00 committed by Wim Taymans
parent 10426790b0
commit ea6ff81d4f

View file

@ -290,6 +290,8 @@ struct pw_node *pw_audio_dsp_new(struct pw_core *core,
goto error; goto error;
} }
mode = pw_properties_get(props, "audio-dsp.mode");
snprintf(node_name, sizeof(node_name), "system_%s", alias); snprintf(node_name, sizeof(node_name), "system_%s", alias);
for (i = 0; node_name[i]; i++) { for (i = 0; node_name[i]; i++) {
if (node_name[i] == ':' || node_name[i] == ',') if (node_name[i] == ':' || node_name[i] == ',')
@ -306,11 +308,13 @@ struct pw_node *pw_audio_dsp_new(struct pw_core *core,
if ((str = pw_properties_get(props, PW_KEY_NODE_ID)) != NULL) if ((str = pw_properties_get(props, PW_KEY_NODE_ID)) != NULL)
pw_properties_set(props, PW_KEY_NODE_SESSION, str); pw_properties_set(props, PW_KEY_NODE_SESSION, str);
if (direction == PW_DIRECTION_OUTPUT) { if (!mode) {
pw_properties_set(props, "merger.monitor", "1"); if (direction == PW_DIRECTION_OUTPUT) {
mode = "merge"; pw_properties_set(props, "merger.monitor", "1");
} else { mode = "merge";
mode = "split"; } else {
mode = "split";
}
} }
pw_properties_set(props, "factory.mode", mode); pw_properties_set(props, "factory.mode", mode);