PulseAudio
開発元 | Lennart Poettering, Pierre Ossman, Shahms E. King, Tanu Kaskinen, Colin Guthrie |
---|---|
最新版 |
14.2 / 2021年1月16日 |
リポジトリ | |
プログラミング 言語 | C言語 |
対応OS | Linux, Solaris, FreeBSD, NetBSD, Mac OS X, Windows |
種別 | サウンドサーバ |
ライセンス | LGPL |
公式サイト |
www |
PulseAudio︵以前はPolypAudioと呼ばれていた︶は、クロスプラットフォームでネットワークに対応したサウンドサーバのプロジェクトであり、
Enlightened Sound Daemon(ESD) の置き換えを指向している。
PulseAudioはWindowsとPOSIX互換のシステム︵Linuxなど︶で動作する。
ライセンスについては、ライブラリの一部はLGPL、サーバそのものはGPLとなっている。
アプリケーションとの関係(Manuel Amador, 2007 : [1])
PulseAudioはバックグラウンドで動作するサウンドサーバであり、
一つまたは複数の音声入力︵プロセスや録音デバイスなど︶からデータを受け取って一つまたは複数の音声出力︵サウンドカードやネットワーク上のPulseAudioサーバ、他プロセスなど︶に送る。
PulseAudioの目標の一つは、旧来のOSSを利用したアプリケーションなどのようにハードウェアに直接アクセスする代わりに、すべての音声ストリームをPulseAudio経由で扱うようにすることである。
そのために、aRtsやESDなど他のオーディオシステムの利用するアプリケーションに対してアダプターを提供する。
Linux環境では通常、PulseAudioが提供している仮想デバイスをALSAが使うように設定する。
こうすることで、ALSAを利用するアプリケーションはPulseAudioにデータを送るようになり、PulseAudioからはALSAを利用してサウンドカードにデータが送られる。
また、
PulseAudioに直接対応しようとするアプリケーションに対しては、
ESDアプリケーション向けの旧来のインターフェイスだけでなく、ESDを置き換える位置づけのネイティブなインターフェイスも提供する。
OSSアプリケーションに対しては、padsp ユーティリティを提供する。
これにより /dev/dsp などのデバイスを置き換えた場合、アプリケーション側からは排他的にサウンドカードをコントロールしているように見えるが、実際の出力はPulseAudio経由で行われる。