mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-04 13:29:59 -05:00
alsa-ucm: use ucm2 name for the direct card index open
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
parent
1ee1f749e1
commit
c8f065250d
1 changed files with 18 additions and 10 deletions
|
|
@ -576,17 +576,25 @@ int pa_alsa_ucm_query_profiles(pa_alsa_ucm_config *ucm, int card_index) {
|
||||||
const char **verb_list;
|
const char **verb_list;
|
||||||
int num_verbs, i, err = 0;
|
int num_verbs, i, err = 0;
|
||||||
|
|
||||||
/* is UCM available for this card ? */
|
/* support multiple card instances, address card directly by index */
|
||||||
err = snd_card_get_name(card_index, &card_name);
|
card_name = pa_sprintf_malloc("hw:%i", card_index);
|
||||||
if (err < 0) {
|
if (card_name == NULL)
|
||||||
pa_log("Card can't get card_name from card_index %d", card_index);
|
return -ENOMEM;
|
||||||
goto name_fail;
|
|
||||||
}
|
|
||||||
|
|
||||||
err = snd_use_case_mgr_open(&ucm->ucm_mgr, card_name);
|
err = snd_use_case_mgr_open(&ucm->ucm_mgr, card_name);
|
||||||
if (err < 0) {
|
if (err < 0) {
|
||||||
pa_log_info("UCM not available for card %s", card_name);
|
/* fallback longname: is UCM available for this card ? */
|
||||||
goto ucm_mgr_fail;
|
pa_xfree(card_name);
|
||||||
|
err = snd_card_get_name(card_index, &card_name);
|
||||||
|
if (err < 0) {
|
||||||
|
pa_log("Card can't get card_name from card_index %d", card_index);
|
||||||
|
goto name_fail;
|
||||||
|
}
|
||||||
|
|
||||||
|
err = snd_use_case_mgr_open(&ucm->ucm_mgr, card_name);
|
||||||
|
if (err < 0) {
|
||||||
|
pa_log_info("UCM not available for card %s", card_name);
|
||||||
|
goto ucm_mgr_fail;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pa_log_info("UCM available for card %s", card_name);
|
pa_log_info("UCM available for card %s", card_name);
|
||||||
|
|
@ -626,7 +634,7 @@ ucm_verb_fail:
|
||||||
}
|
}
|
||||||
|
|
||||||
ucm_mgr_fail:
|
ucm_mgr_fail:
|
||||||
free(card_name);
|
pa_xfree(card_name);
|
||||||
|
|
||||||
name_fail:
|
name_fail:
|
||||||
return err;
|
return err;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue