Звуковой сервер



Звуковой сервер — программное обеспечение, которое управляет использованием аудиоустройств и доступом к ним. Обычно он выполняется в качестве фонового процесса.

Звуковой сервер в операционной системе

В Unix-подобных операционных системах звуковой сервер смешивает различные потоки данных и посылает единый унифицированный аудиосигнал на устройство вывода. Смикширование обычно выполняется программным или аппаратным обеспечением, если это поддерживает звуковая карта.

Уровни

  • Приложения (например mp3 player, web video)
  • Звуковой сервер (например aRts, ESD, JACK, PulseAudio)
  • Звуковая подсистема (описывается как модули ядра или драйвера; например OSS, ALSA)
  • Ядро операционной системы (например Linux, Unix)

Мотивация

Звуковые серверы появились в Unix-подобных операционных системах после распознавания ограничений в Open Sound System. OSS — это базовый звуковой интерфейс, который был неспособен воспроизводить несколько потоков одновременно, работать с несколькими звуковыми картами или передавать потоковое звучание по сети.

Звуковой сервер может обеспечить эти возможности, запустившись в качестве демона. Он принимает вызовы от различных программ и потоков звука, микширует потоки и отправляет необработанное аудио на аудиоустройство.

С помощью звукового сервера пользователи также могут настраивать глобальные и индивидуальные настройки звука для каждого приложения.

Список звуковых серверов

  • aRts
  • Enlightened Sound Daemon
  • JACK
  • Network Audio System
  • PipeWire
  • PulseAudio
  • sndio — аудио и MIDI фреймворк в OpenBSD

Потоковое вещания

  • Icecast
  • SHOUTcast