[alsa-devel] SoC multiple streams
stevel at embeddedalley.com
Thu Jun 28 02:08:01 CEST 2007
Liam Girdwood wrote:
> On Mon, 2007-06-18 at 14:55 -0700, Steve Longerbeam wrote:
>> Hi all,
>> I'm developing an SoC driver for a sound engine that supports playing up
>> to 64 simultaneous substreams, all mixed in h/w to a stereo DAC. But it
>> doesn't appear that the SoC framework supports multiple substreams,
>> according to soc_new_pcm(). Am I missing something, or is this on the
>> asoc development roadmap?
> It's now on the development roadmap ;)
that's cool, thanks.
I've got some more questions about multiple substreams. In the sound
engine I'm working on, each "voice" (substream) has its own private
controls, such as L/R volume, 3D (distance and angle factors), and gain
envelopes. All 64 substreams are then mixed in h/w to a single stereo
stream, and global controls are then applied, such as master volume.
It's looking like the way to implement per-substream controls is to add
the controls for all possible substreams, and then somehow determine
which substream is being referred to in the get/put callbacks, and then
get/put the control for only that substream. Is this the way
per-substream controls should be done?
Also, with 64 substreams and multiple controls for each, we're talking
about adding hundreds of controls, can ALSA handle this? I can imagine
alsamixer looking quite crowded :-/
More information about the Alsa-devel