mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-10-29 05:40:23 -04:00
alsa-mixer: Pick at most one fallback mapping
The old behaviour was such that if none of the normal mappings worked, we would probe ALL fallbacks. I don't think that makes sense, and it caused concrete issues: let's say we have a regular stereo mic device, but there's no "front" PCM defined for it. In this situation we would probe the stereo-fallback mapping (which uses "hw" instead of "front"), and it would work, but then we'd also probe the "multichannel-input" mapping, which would also work, so we end up with two mappings that don't have any difference in behaviour. I think it's better to simply pick the first working fallback and ignore the rest. Fixes: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/901 (issue is marked as confidential due to unreleased hardware) Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/304>
This commit is contained in:
parent
9b0ae8327d
commit
e3f2c25fac
1 changed files with 2 additions and 2 deletions
|
|
@ -5155,14 +5155,14 @@ void pa_alsa_profile_set_probe(
|
|||
if (p->output_mappings)
|
||||
PA_IDXSET_FOREACH(m, p->output_mappings, idx)
|
||||
if (m->output_pcm) {
|
||||
found_output |= !p->fallback_output;
|
||||
found_output = true;
|
||||
mapping_paths_probe(m, p, PA_ALSA_DIRECTION_OUTPUT, used_paths, mixers);
|
||||
}
|
||||
|
||||
if (p->input_mappings)
|
||||
PA_IDXSET_FOREACH(m, p->input_mappings, idx)
|
||||
if (m->input_pcm) {
|
||||
found_input |= !p->fallback_input;
|
||||
found_input = true;
|
||||
mapping_paths_probe(m, p, PA_ALSA_DIRECTION_INPUT, used_paths, mixers);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue