On Saturday 15 November 2008 09:13:33 pm Jack
O'Quin wrote:
Most applications should use some simpler
interface like JACK or PulseAudio.
Or OSS or PortAudio or [insert-favorite-framework-here]. They all have their
places.
The low-level driver interface
should expose the full capabilities of the audio hardware for more
complex control purposes.
Yes, which is why I think ALSA is most appropriately characterized as a 'HAL'
(Hardware Abstraction Layer). Now if we could just get the bits and pieces
documented properly... :)
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
to come).
Best regards,
Hannu