[alsa-devel] ALSA DMIX support without MMAP ?

Mark Brown broonie at opensource.wolfsonmicro.com
Mon Jan 18 12:01:07 CET 2010

On Mon, Jan 18, 2010 at 03:25:31AM +0000, ANISH KUMAR wrote:

[Reflowed into 80 columns for legibility.]

> Mark thanks for the suggestion and i checked out PulseAudio for my
> requirements.I found out that i don't need all the things in PulseAudio 
> a. I just need good resampling code.Can i just use just the resampler code of pulseaudio(mine is mobile enviroment)?
> b. Just want a good mixer at ALSA-LIB level.As of now this is provided by android framework but i want this to be done by ALSA-LIB so that i
>     can replace with some good mixer later on(if i find that some other mixer is good).DMIX is providing that but it's not that good.

The mixing (and therefore resampling) are the core functionality of
PulseAudio which is why it seems like a good fit for your application.

> c.Jaroslav suggested to use sox resamplers but for that to work i have to get the sox resampler code(proper license) and need to build it for my system and link it  
>    with corresponding functions of ALSA-LIB so that they can call relevant functions for resampling.As i am working on mobile domain i think i need to do the   
> d. I saw some check-ins related to Scenario Manager.As of now scenario manager functionality is also given in Android(we open a differnet
>     device and the corresponding hooks for changing the routes dynamically) but i think if it given in alsa-lib switching will be much faster and this 
>     will increase the system performance.

The application layer code isn't going to make a meaningful difference
to the performance of scenario switching unless it's woefully
inefficient, the major constraint is almost always the fact that the
CODEC has a relatively slow control bus so the register changes to
implement the change dominate the time.

More information about the Alsa-devel mailing list