Thanks for the advice.. Couple of inline questions below..
-----Original Message-----
I am new to ALSA, so some help from experienced folks would help..
We are trying to develop ALSA support for our DSP based mixer. In
our
architecture DSP performs the mixing, sample rate conversion etc. My question is how, can does the user space applications exercise controlling individual PCM stream to the mixer? Ex: individual
stream
gain control, individual stream mute, etc.. Any user space example
code
would be useful too..
Most drivers create PCM volume controls with IFACE_PCM tag, and set up the volume appropriately at each PCM open, or let alsa-lib configs to set up the initial volumes. Usually, the control element index corresponds to the PCM substream number.
Which alsa library API lets us to set up the PCM stream volume? And can it be used dynamically when the stream is active? I could n't figure out 'index' of the control element. Can you please explain which parameter of the 'struct snd_ctl_elem_value' you are referring to..
The controls with IFACE_PCM are not visible from normal mixer apps. (The mixer sees only IFACE_MIXER elements.) So, if you need a dynamic control of such elements, you'll likely need a special program to access the corresponding elements.
Takashi