PulseAudio

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
PulseAudio
開発元 Lennart Poettering, Pierre Ossman, Shahms E. King, Tanu Kaskinen, Colin Guthrie
最新版 5.0 / 2014年03月3日(5か月前) (2014-03-03
プログラミング言語 C言語
対応OS Linux, Solaris, FreeBSD, NetBSD, MacOS X, Windows
種別 サウンドサーバ
ライセンス LGPL
公式サイト www.pulseaudio.org
テンプレートを表示

PulseAudio(以前はPolypAudioと呼ばれていた)は、クロスプラットフォームでネットワークに対応したサウンドサーバのプロジェクトであり、 Enlightened Sound Daemon(ESD) の置き換えを指向している。

PulseAudioはWindowsとPOSIX互換のシステム(Linuxなど)で動作する。 ライセンスについては、ライブラリの一部はLGPL、サーバそのものはGPLとなっている。

特徴[編集]

  • アプリケーションごとのボリュームコントロール
  • ローダブル・モジュール対応を伴った拡張プラグイン構造
  • 多くの有名なオーディオアプリケーションとの互換性[要出典]
  • 複数のオーディオソース/シンクに対応
  • 低遅延な動作[要出典]と遅延量の計測に対するサポート
  • A zero-copy memory architecture for processor resource efficiency
  • Ability to change which output device an application plays sound through while the application is playing sound (without the application needing to support this, and indeed without even being aware that this happened)
  • スクリプト処理に対応したコマンドライン・インターフェイス
  • コマンドラインから設定変更できるサウンドデーモンとして動作する
  • サンプリングレート変換、再サンプリングにビルトインで対応
  • 複数のサウンドカードをひとつにまとまられる
  • 複数の再生ストリームを同期させることができる
  • Bluetoothオーディオデバイスを動的に検出

アプリケーションとの関係[編集]

アプリケーションとの関係(Manuel Amador, 2007: [1])

PulseAudioはバックグラウンドで動作するサウンドサーバであり、 一つまたは複数の音声入力(プロセスや録音デバイスなど)からデータを受け取って一つまたは複数の音声出力(サウンドカードやネットワーク上のPulseAudioサーバ、他プロセスなど)に送る。

PulseAudioの目標の一つは、旧来のOSSを利用したアプリケーションなどのようにハードウェアに直接アクセスする代わりに、すべての音声ストリームをPulseAudio経由で扱うようにすることである。 そのために、aRtsやESDなど他のオーディオシステムの利用するアプリケーションに対してアダプターを提供する。

Linux環境では通常、ALSAがPulseAudioが提供している仮想デバイスを使うように設定する。 こうすることで、ALSAを利用するアプリケーションはPulseAudioにデータを送るようになり、PulseAudioからはALSAを利用してサウンドカードにデータが送られる。 また、 PulseAudioに直接対応しようとするアプリケーションに対しては、 ESDアプリケーション向けの旧来のインターフェイスだけでなく、ESDを置き換える位置づけのネイティブなインターフェイスも提供する。

OSSアプリケーションに対しては、padsp ユーティリティを提供する。 これにより /dev/dsp などのデバイスを置き換えた場合、アプリケーション側からは排他的にサウンドカードをコントロールしているように見えるが、実際の出力はPulseAudio経由で行われる。

関連項目[編集]