[linux-audio-dev] What parts of Linux audio simply suck ? - ALSA

Takashi Iwai tiwai at suse.de
Mon Jun 20 15:29:26 UTC 2005


At Sun, 19 Jun 2005 22:41:03 -0300,
Juan Linietsky wrote:
> 
> ALSA related, I hate:
> 
> -Dmix. It's not fair, why not the windows/beos approach which uses 
> primary/secondary buffers? so you can
> AT THE SAME TIME access asyncronously to the audio device (Jack) and 
> have lower priority audio mix when it can, by copying it from from some 
> less-priority buffers too? I mean it can be done at driver/kernel level, 
> so WHY dmix/jack have to be exclusive??

Well, in theory, they are not necessarily exclusive.  dmix can provide
as good latency as the direct access does since dmix is just the
shared mmap of h/w buffer with multiple apps (in the lowest level).
The intermedate buffer is used in practice for clipping, and there are
some tricks  to emulate the irq timing, etc, though, which are the
places for more improvement.

> -Module configuration parameters. WHY ON EARTH do I have to specify the 
> IO port for mpu401, joystick, etc as driver options when loading the 
> modules for my soundcard, else doesnt work? What year are we on?! I cant 
> believe that this resource allocation is not handled by ALSA or the 
> linux kernel!

They are very old system, indeed.  (Remember they have been called
"legacy" devices even 5 years ago.) 
They have neither PnP nor automatic resource allocation mechanism.
The only way is trial-and-error.  We disable them per default just
because it's safer for the system (the resource confliction may lock
up your system silently).  It's a usual question whether convenience
or safety.

> -OSS/ALSA Conflicting modules in hotplug. Hotplug seems to make a mess 
> in many systems i've seen, of loading ALSA and OSS modules at the same 
> time, by rendering the system audio unusable.

It's not a fault of ALSA itself - at least, you can't solve by ALSA
alone.

> -Mixer is very complicated, with lot of useless options for the card, 
> many times buggy with inverted ins/outs (CMIPCI). Why not simply make 
> the alsa mixer system work with categories? I Mean.. you
> can have the basic categories INPUT/OUTPUT, but also to host special 
> categories like 3D control, individual
> channels of sblive, and other stuff which may be soundcard specific? 
> This way mixers could be sane again.

That's true.  This issue is woring in progress.  I hope the improved
mixer stuff will be available in the next ALSA release.


Takashi



More information about the Linux-audio-dev mailing list