pipewire/spa/plugins/alsa/acp
Wim Taymans 7e4d87402b alsa-ucm: Create multiple profiles per verb for conflicting devices
Right now we try to add all UCM devices of a verb to a single profile.
But if some devices using different PCMs are configured as conflicting
with one another, we will only be able to utilize one of them, chosen
seemingly based on the order in the UCM config file.

This is not a problem with conflicting devices sharing a PCM, as they
are assigned to the same mapping and the ports mechanism only enables
one of them to be active at a time.

To utilize all devices in a UCM verb even when there are conflicting
devices using different PCMs, calculate subsets of devices which
can be simultaneously used and create a profile for each such set.

Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
2023-03-20 17:38:44 +01:00
..
acp.c alsa-ucm: Make mapping UCM contexts have only one device 2023-03-20 17:24:12 +01:00
acp.h treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
alsa-mixer.c acp: add debug for open and close 2022-08-05 12:31:28 +02:00
alsa-mixer.h alsa-ucm: Let profiles know their associated UCM verb 2023-03-20 15:18:12 +01:00
alsa-ucm.c alsa-ucm: Create multiple profiles per verb for conflicting devices 2023-03-20 17:38:44 +01:00
alsa-ucm.h alsa-ucm: Make mapping UCM contexts have only one modifier 2023-03-20 17:31:31 +01:00
alsa-util.c alsa-mixer: allow to re-attach the mixer control element 2023-03-20 13:19:51 +01:00
alsa-util.h acp: add debug for open and close 2022-08-05 12:31:28 +02:00
array.h treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
card.h acp: add option to set Pro Audio channels 2023-01-31 15:59:39 +01:00
channelmap.h acp: don't mix non-AUX and AUX channels 2022-06-02 12:54:04 +02:00
compat.c spa: alsa: Fix build warning 2021-10-25 07:26:15 +00:00
compat.h alsa-ucm: Remove combination port generation logic 2023-03-20 16:49:35 +01:00
conf-parser.c config.h is a local header, not a system one 2021-06-10 09:04:16 +10:00
conf-parser.h alsa-acp: Add libacp based card device 2020-07-06 12:20:09 +02:00
device-port.h Fix typos 2021-04-30 07:40:20 +00:00
dynarray.h treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
hashmap.h treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
idxset.h alsa-ucm: Rewrite conformant device group generation with idxsets 2023-03-20 16:28:32 +01:00
llist.h alsa-acp: Add libacp based card device 2020-07-06 12:20:09 +02:00
meson.build treewide: meson.build: use dependency variable for SPA 2021-12-28 18:34:06 +01:00
proplist.h treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
volume.h acp: add support for soft volume 2020-07-06 17:22:42 +02:00