A.L.S.A. is a micro version of Linux itself - Freely available,
worked on by developers from around the world, and the program source is
there for all to examine. In the future the ALSA
driver set will be part of generally available distributions.
Up until now if you wanted advanced features such as using the full
duplex capabilities of your soundcard (which is useful if you're
recording more than one track and want to hear a previously recorded
track while you're putting down a new one) then you had to buy a
commercial set of drivers and pay money for them. ALSA will change that.
Jaroslav Kysela started with a sound driver he needed to support
a sound card, and this grew into the ALSA project which he co-ordinates.
Recently, Jaroslav started work with S.u.S.E. and will be spending
around sixty per cent of his time on the A.L.S.A. project.
MusicStation recently talked to him....
I came to find ALSA because I was searching for alternatives
to enable full-duplex use of my soundcard. But there are
quite a few other features. What would you say are the main
features of the ALSA sound drivers?
The ALSA project extends all application interfaces when it is compared
with Open Sound System drivers (both commercial and Lite). The development
of the interfaces is still in progress, but I should mention for example
the new mixer interface. It describes the single mixer elements (like
volume slider, on/off switch ...) and signal paths. This implementation
allows to present very complex mixers. My vision is that an user will be
able to see (when an application will be available) whole mixer and to use
this tool in a more intuitive way. The PCM interface (most people know
it as Open Sound System /dev/dsp interface) is also extended. The
full-duplex support is only one of the basic features. The plan is to add
the multi open possibility. It means, if the hardware allows, that more
applications will be able to open the PCM device together, until the
hardware resources won't be exhausted. There are also some synchronization
issues among more PCM devices in my mind.
The most enhanced thing from the ALSA driver is the music sequencer. It
allows to connect 192 clients (128 inside kernel and 64 applications)
total. I think that this sequencer doesn't have an analogy in the other
implementation. I'm sending many thanks to Frank van de Pol, the author of
the first sequencer proposal and prototype.
One of the features is the modularity. Is this just a
convenient method of construction or are there other
benefits with modules?
The modularity is mainly used as the convenient method of construction.
Many soundcards are using same chips, but these chips could be connected
in various ways. The ALSA driver uses three basic layers: midlevel code,
lowlevel code and toplevel code. The code is very separated and
I read recently on one of the sound mailing lists (I
think it was linux-sound) that a common problem with
hard disk recording was 'under-running' which was basically
caused by the CPU having too much work to do. Could
clever module design help lessen the CPU load?
The code design of the sound driver has not much affect on CPU load in
this case. The system performance is also affected by many other
parameters like the IDE disk setup, kernel buffering for block devices,
kernel scheduler etc..
Congratulations about your job with SUSE. Can we take it...
that in the not too distant future we might see the
ALSA driver set as part of a SUSE distribution? Have any
other commercial distributors shown an interest? (I
think I saw Red Hat's Bill Nottingham on the alsa-users
list not so long ago.)
Yes, I can say, ALSA will be the sound future for Linux. My primary goal
is to merge the ALSA driver sources to current 2.3 development kernel with
some help from Alan Cox. When it will be finished, all distibutors
probably will use the ALSA driver as part of the official Linux kernel.
The ALSA driver will be the part of the SuSE distribution as soon as
possible. I am the responsible person for this job.
Does the new popularity and recognition of Linux amongst
commercial developers make it any easier to get info
out of sound card manufacturers?
Yes, it does. Trident, Cirrus Logic and ForteMedia companies already
contacted me for the driver development and they made available
appropriate documentation. Trident company even submitted their ALSA
Do you see any of the surround sound formats being
supported any time soon? Is there a particular format
At the beginning I mentioned that the PCM interface needs to be extended
for the synchronization among more PCM devices (streams). This would allow
to fully support soundcards like AudioPCI from Ensoniq and some other with
two stereo outputs (4 speakers).
It would be also good to support the consumer formats like Dolby Digital
(AC-3) 5.1 or DTS 5.1, but we must have firstly some hardware for it.
The hardware encoders for these formats would probably be expensive.
I am personally impressed with the Dolby Digital sound which is stored on
the DVD discs.
Jaroslav, thanks very much for your time.
Read Dev Mazumdar talking about 4Front
Read Nick Copeland on SLab 3.0 and beyond
Linux Sound Apps page
real producer G2