On Mon, Nov 17, 2008 at 12:02:33AM +0200, Hannu Savolainen wrote:
ALSA is not a 'HAL' but a 'HEL'
(Hardware Exposing Layer). For good
hardware abstraction as much details as possible should be hidden from
the applications. Having 1500+ different functions means that there is
hardly any abstraction left. For this reason ALSA usually needs to be
hidden behind additional libraries (Jack, PulseAudio and dozens of more
The large number of functions, which is indeed a misery,
is not a result of 'exposing the hardware'. There are
other reasons for this.
'Hardware abstraction' means to abstract *the way something
is implemented in hardware*, and the details of the software
that have to deal with this. It does NOT_ mean *hiding the
functionality* of the hardware, or reducing it to some
minimal common set. You seem to be confusing the two.
For audio hardware, sample rate, or it source, are fundamental
parameters that must not be hidden from the user. Except maybe
in the case of a desktop media player. But certainly not in a
production or research environment. It seems very much that
your view of the audio world is limited to its use for desktop
entertainment.
BTW, if OSS presents a MADI card as 32 separate stereo devices
then it is completely missing the point of using such cards.
I have been very critical of ALSA in the past, and have kept
an open eye on OSS regardless of any 'political correctness'
issues. But if OSS is driven by the ideas you have expressed
in recent posts I'll have to forget about it.
Ciao,
--
FA
Laboratorio di Acustica ed Elettroacustica
Parma, Italia
Lascia la spina, cogli la rosa.