Linux Tips

サウンドを鳴らすには

北浦訓行
2001/8/23

 Linuxでは、OSS(Open Sound System)というサウンド機能がサポートされている。Linux(のカーネル)に組み込まれているOSSはフリー版であり、サポートする音源ボードの数が少ないので音が鳴らないケースも多い。インストール時に音源ボードが自動認識され、音が鳴っているならそれでいいのだが、そうでない場合は自分で設定をしなければならない。音源ボードの認識などはsndconfigコマンドで行うが、認識されるもののなぜか音が鳴らないということも多い。

 そのような場合は、OSS互換のALSA(Advanced Linux Sound Architecture)を使うといい。ALSAは、サポートする音源ボード(実際には音源チップ)の数がOSSより多く、性能もしのぐといわれている。

 まず最初に、使用しているPCの音源チップにALSAが対応しているかどうかを確認する。音源チップを調べるには、lspciコマンドを使用する。表示されている中で「Multimedia audio controller」が音源チップの項目になる。また、catコマンドなどで/proc/pciを表示しても音源チップを確認することができる。

# lspci
00:00.0 Host bridge: Intel Corporation 440BX/ZX - 82443BX/ZX Host bridge (rev 03)
00:01.0 PCI bridge: Intel Corporation 440BX/ZX - 82443BX/ZX AGP bridge (rev 03)
00:07.0 ISA bridge: Intel Corporation 82371AB PIIX4 ISA (rev 02)
00:07.1 IDE interface: Intel Corporation 82371AB PIIX4 IDE (rev 01)
00:07.2 USB Controller: Intel Corporation 82371AB PIIX4 USB (rev 01)
00:07.3 Bridge: Intel Corporation 82371AB PIIX4 ACPI (rev 02)
00:0c.0 Multimedia audio controller: Ensoniq ES1371 [AudioPCI-97] (rev 04) ←音源チップが「Ensoniq ES1371」だと分かる
00:0d.0 Ethernet controller: Standard Microsystems Corp [SMC] 83C170QF (rev 08)
00:0f.0 SCSI storage controller: Advanced Micro Devices [AMD] 53c974 [PCscsi] (rev 10)
01:00.0 VGA compatible controller: nVidia Corporation Riva TNT 128 (rev 04)

 音源チップ名が分かったら、ALSAのWebサイト(http://www.alsa-project.org/)でその音源チップがサポートされているかどうかを確認する。ALSAのWebサイトには、日本語ページ(http://alsa.linux.or.jp/)もあるのだが、対応音源チップの一覧はオリジナルのサイトで確認した方がいい。

 音源チップがサポートされていたら、最新のドライバをダウンロードする。ダウンロードする必要があるのは4つのファイルだ。2001年8月時点のファイル名は以下のようになっていた。

alsa-driver-0.5.11.tar.bz2
alsa-lib-0.5.10b.tar.bz2
alsa-utils-0.5.10.tar.bz2
alsaconf-0.4.3b-1.noarch.rpm

 RPMファイル以外はtarコマンドで展開する。

# tar Ixvf alsa-driver-0.5.11.tar.bz2
# tar Ixvf alsa-lib-0.5.10b.tar.bz2
# tar Ixvf alsa-utils-0.5.10.tar.bz2

 以下のようにrpmコマンドを実行すると、alsaconfコマンドがインストールされる。

# rpm -ivh alsaconf-0.4.3b-1.noarch.rpm

 alsaconf-0.4.3b-1.noarch.rpm以外はソースリストなので、コンパイルとインストールが必要だ。おのおののディレクトリに移動して、以下の手順を実行する。

# cd alsa-driver-0.5.11 ←alsa-driver-0.5.11ディレクトリに移動
# ./configure ←configureというシェルスクリプトを実行
# make ←コンパイルする
# make install ←インストールする

 続いて、以下の手順でALSAが使用するデバイスファイルを/devディレクトリに作成する。

# ./snddevices ←snddevicesというシェルスクリプトを実行

 ライブラリとユーティリティも、ドライバと同様にコンパイルしてインストールする。

# cd ../alsa-lib-0.5.10b ←alsa-lib-0.5.10bディレクトリに移動
# ./configure ←configureというシェルスクリプトを実行
# make ←コンパイルする
# make install ←インストールする
# cd ../alsa-utils-0.5.10 ←alsa-utils-0.5.10ディレクトリに移動
# ./configure ←configureというシェルスクリプトを実行
# make ←コンパイルする
# make install ←インストールする

 次に、ドライバの組み込みを指定する。これには、alsaconfを使用する。

# alsaconf

 以上でALSAのインストールは終了だが、ALSAをインストールすると音量が0に設定される。「オーディオミキサー」(gmix)などのプログラムを使って、ボリュームを調整する。

GNOMEにインストールされている「オーディオミキサー」

Linux Tips Index



 Linux Squareフォーラム Linux Tipsカテゴリ別インデックス
インストール/RPM ブート/ブートローダ
ファイル操作 環境設定
ユーザー管理 コンソール/ターミナル
X Window System セキュリティ
トラブルシューティング 他OS関係
ネットワーク ハードウェア
Webサーバ Samba
GNOME KDE
OpenOffice.org エミュレータ
ソフトウェア そのほか/FAQ
全Tips公開順インデックス Linux Tips月間ランキング
Linux Squareフォーラム全記事インデックス

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間