Hi, I'm working on the integration of pulseaudio with ALSA Use Case Manager (UCM) - released in alsa-lib 1.0.24. UCM abstracts sound card mixer controls into high level use case verbs like "phone call" or "music". This is especially important on complicated audio devices like phones that expose a lot of mixers. UCM stores the mixer settings per use case in configuration files. These files also contain other information that pulseaudio could use :- * list of use case verbs per card or machine - The use case verb is the audio use case action. e.g. the "phone call" use case verb will configure the audio hardware for phone call playback and capture. Other example verbs are: FM Analog Radio, HiFi Music, etc. * supported devices per use case verb e.g configures hardware for Speaker, Line, Headphones, Headset, Handset. etc. for each use case. The use case could be HiFi music and the device could be set to either Speaker or Headphones, etc. * use case sink device * use case source device e.g. pcm0 is the sink for music, pcm3 is the sink for tones * hardware playback volume control id (per use case verb and device) * hardware playback mute switch id * hardware capture volume control id * hardware capture mute switch id e.g. The alsa mixer control id that directly effects the audio for each use case and device. I've created some code that can read this data out of UCM in module alsa-card but I'm now looking for the best way to store this into the prop list for the sound card. e.g. should I extend intended roles proplist or add new proplist types for UCM. It's intended that the UCM properties will be checked every time a new stream is opened so that pulseaudio can configure the hardware correctly for that stream. e.g. phone call application opens a new stream so pulseaudio will configure sound hardware via UCM for a phone call. Any suggestions appreciated. Thanks Margarita