コンテンツにスキップ

Advanced Linux Sound Architecture

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。Solact (会話 | 投稿記録) による 2010年6月3日 (木) 16:50個人設定で未設定ならUTC)時点の版 (最新版のバージョン表記を追従)であり、現在の版とは大きく異なる場合があります。

ALSA
AlsaMixer 1.0.14のスクリーンショット
作者 Jaroslav Kysela
初版 1998
最新版
対応OS Linux
種別 Audio
ライセンス GPL and LGPL
公式サイト www.alsa-project.org
テンプレートを表示

Advanced Linux Sound Architecture (ALSA) は、サウンドカードデバイスドライバを提供するOpen Sound System (OSS)を置き換えるために開発されたLinuxカーネルコンポーネントである。ALSAプロジェクトの初期の目標は、サウンドカードハードウェアの自動設定や、複数のサウンドデバイスのスマートな取扱いなどであったが、それらは概ね達成された。JACKなどのいくつかのフレームワークは、待ち時間の小さいプロフェッショナル級の編集ミキシングを実現するためにALSAを利用している。

ALSAプロジェクトは、1998年Jaroslav KyselaによってGravis UltrasoundサウンドカードのためのLinuxデバイスドライバが書かれたことから始まった。ALSAは、2002年にLinuxカーネル2.5開発版(2.5.4-2.5.5)に導入されるまで、Linuxカーネルとは別個に開発されていた[1]。2.6では、後方互換レイヤーがあったとはいえ、標準設定でOSSを置き換えた。

特徴

ALSAは、その構想時点ではOSSがサポートしていなかったいくつかの機能をもつよう設計されている。

これらの機能を美しくサポートするため、ALSAはOSSよりも巨大で複雑なAPIをもっている。そのため、ALSAのサウンド技術を利用するアプリケーションを開発することはOSSほど簡単ではない。しかし、ALSAにはOSSのエミュレーションレイヤーがあるため、より簡素で可搬性の高いOSSのAPIを利用することもできる。

ALSAはデバイスドライバの他に、カーネルドライバと直接やりとりせずに高レベルのAPIを使ってドライバ機能を使いたいという開発者のために、ユーザ空間ライブラリも提供している。ハードウェアの能力を直接反映しようとするカーネルAPIとは違って、ALSAのユーザ空間ライブラリは、異なるハードウェア間でも可能な限り同じように扱えるよう、抽象的なインタフェースを提供している。これは、一部にはソフトウェアプラグインを用いて実現されている。たとえば、現在の多くのサウンドカードや組込みサウンドチップは「マスターボリューム」コントロールをもたないが、これらのデバイスのためにユーザ空間ライブラリは「softvol」プラグインによってソフトウェアボリュームコントロールを提供している。そのため、通常のアプリケーションソフトウェアはこれらの違いを認識する必要がない。

脚注

関連項目

外部リンク