alsa: Add a proplist to mappings

The proplist isn't used by the conventional alsa-mixer code path, but
can be used by UCM to transfer properties from UCM data to the
sinks/sources corresponding to a mapping. These properties could be used
later in policy, etc.

The specific use for which I'm writing this now is for UCM modifiers
that have their own PlaybackPCM/CapturePCM field. These will be
translated to a separate sink/source corresponding to the modifier by
adding an additional mapping per sink/source. These mappings' proplist
will be populated with the name of the modifier and corresponding
"device.intended_role" property. The latter will be used in the usual
routing-by-role way, and the former will be used during sink/source
activation and deactivation to know what UCM modifier is to be enabled
or disabled.
This commit is contained in:
Arun Raghavan 2012-07-03 11:50:29 +05:30
parent 89024f6f12
commit a08c85d299
4 changed files with 15 additions and 2 deletions

View file

@ -246,6 +246,8 @@ struct pa_alsa_mapping {
char *description;
unsigned priority;
pa_alsa_direction_t direction;
/* These are copied over to the resultant sink/source */
pa_proplist *proplist;
pa_channel_map channel_map;