> Кстати, уважаемого Эксперта Опеннет не затруднит более детально и конкретно описать "лучшесть" ALSA в сравнении с OSS?Там почти всё лучше.
*Архитектура*. ALSA чётко разделена на две части:
(1) драйвера, в ядре, предоставляют единый интерфейс ко всем звуковым картам.
(2) библиотека, в юзерспейсе, дающая API, ресемплинг, микширование, софтовую громкость, и другие плагины.
*API*. Для мелочей есть простое апи. И ogg-плеер на ALSA можно написать в 40 строк. Но если надо, можно получить эксклюзивный прямой доступ к буферу звуковой карты, делать на базе него всякие генераторы сигналов и осциллографы.
*Расширяемость*. В alsa фичи — это плагины для alsa-lib в юзерспейсе. Потому сделать можно почти что угодно. Хочется добавить к звуку эквалайзер — плагин alsaequal. Достало вечно крутить громкость, потому что в одних треках она на максимуме, а в других еле слышно — можно сделать нормализацию громкости через ladspa-плагин. Да и вообще через ladspa можно любые эффекты прикрутить. А если вы — аудиофил, и стандартный ресемплер вас не устраивает — можно подключить какой-нибудь fft-ресемплер. Всё это — глобально и прозрачно работает для всех программ в системе.
*Отладка и настройка*. Опять-таки, всё в юзерспейсе, поэтому настроить можно что угодно. Можно сдампить сырой звук, уходящий из любой софтины, а потом в аудио-редакторе посмотреть, что там у неё щёлкает. Можно сделать, чтобы звук в аудио-звонке брался не с физического микрофона, а с виртуального, в который играет какой-нибудь плеер. И т.д.
Например, у меня все программы по-умолчанию играют и в USB-наушники И в динамики. Хочу — слушаю в наушниках, а если надо — включаю питание на динамиках и слушаю из них.
MIDI. В ALSA есть офигенный midi sequencer — это IPC, что-то вроде jackd для миди, позволяющий соединять разные железки и софтовые реализации в любые цепочки. Можно использовать хоть хардварный миди-синтезатор, хоть софтварные timidity/fluidsync, или какой-нибудь Qtractor. Всё это можно запустить одновременно, и софтово на лету переключать, что куда играет.
Хотя, может, мои данные устарели, и сейчас в OSS ситуация получше?
А то в мои времена в OSS даже вывод в HDMI не работал.