mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-10-31 22:25:38 -04:00
UCM profiles can use the same ports, but with different priorities. One good example is a phone, having an earpiece and a speaker: - the default profile will put a higher priority on the speaker - the "voice call" profile will put a higher priority on the earpiece When switching to the "voice call" profile, we want pipewire to take into account the priority change, so that the earpiece gets the highest priority and is selected by default. As the ports have the same name in both profiles, we have a single instance of each port in memory, and therefore need to trigger a port update when the profile is changed, so that the priority set by the new profile is used. Moreover, the UCM code updates only the priority inside the `pa_device_port` structure, so this commit also makes sure we reflect this value into the `acp_port` structure when enabling a device. |
||
|---|---|---|
| .. | ||
| acp.c | ||
| acp.h | ||
| alsa-mixer.c | ||
| alsa-mixer.h | ||
| alsa-ucm.c | ||
| alsa-ucm.h | ||
| alsa-util.c | ||
| alsa-util.h | ||
| array.h | ||
| card.h | ||
| channelmap.h | ||
| compat.c | ||
| compat.h | ||
| conf-parser.c | ||
| conf-parser.h | ||
| device-port.h | ||
| dynarray.h | ||
| hashmap.h | ||
| idxset.h | ||
| llist.h | ||
| meson.build | ||
| proplist.h | ||
| volume.h | ||