Open Sound System - OSS in Relation To ALSA

OSS in Relation To ALSA

In the Linux kernel, there have historically been two uniform sound APIs used. One is OSS; the other is ALSA (Advanced Linux Sound Architecture). ALSA is available for Linux only, and as there is only one implementation of the ALSA interface, ALSA refers equally to that implementation and to the interface itself.

OSS was the only audio API in Linux up through the 2.4 series of official (kernel.org) Linux kernels. ALSA was added starting with 2.5, and in those versions, Linux kernel authors marked OSS as deprecated. 4Front continued to develop OSS outside of the Linux kernel.

ALSA provides an optional OSS emulation mode that appears to programs as if it were OSS. Similarly, there was an ALSA emulation mode in the Linux implementation of OSS.

OSS both as API and as software has been criticized by some developers, such as Paul Davis and Lennart Poettering. Often heard arguments against OSS are: the API is practically impossible to virtualize, it lacks support for modern audio features such as timer-based scheduling or proper surround sound support, inability of its developers to work with the Linux kernel community, lack of integration with modern kernel features such as the device model, too low-level interface, as well as general rejection of its design with moving a lot of signal processing code into the kernel. Most of these criticisms were either specific to the Linux implementation and not to the OSS API itself, or have been addressed in OSS version 4.

On the other hand, some claim that OSS is better documented than ALSA and its API is simpler and easier to use, and suggest OSS provides better sound quality .

Read more about this topic:  Open Sound System

Famous quotes containing the word relation:

    When needs and means become abstract in quality, abstraction is also a character of the reciprocal relation of individuals to one another. This abstract character, universality, is the character of being recognized and is the moment which makes concrete, i.e. social, the isolated and abstract needs and their ways and means of satisfaction.
    Georg Wilhelm Friedrich Hegel (1770–1831)