Last modified: June 21th, 2002
Table of Contents
サウンドカードの設定について少し触れてみます. サウンドカードの認識には必要なモジュール, IRQ , IO ポート, DMA チャンネルといった情報を把握しておく必要があります(PCI であれば自動認識されることが多いですが 認識されない場合や ISA の場合はこれらの情報が必要). しかし, Redhat 系ディストリビューション (Vine や Redhat など) ではサウンドカードの設定を簡単に行えるツールとして
sndconfig があります. sndconfig を使えば, 認識したサウンドカードの設定を /etc/conf.modules に書き込んでくれます. TurboLinux 6.0ws なら ALSA を使った alsaconf によって sndconfig と同様に /etc/modules.conf への書き込みが行えます. alsaconf で設定が完了したら /etc/rc.d/init.d/alsasound
start を実行しましょう.
sndconfig や alsaconf を実行した場合には /etc/conf.modules( または /etc/modules.conf) に以下のような内容が書き込まれます (sndconfig での例).
| alias sound sb alias midi mpu401 options sb io=0x220 irq=5 dma=3 dma16=-1 alias midi mpu401 options -k mpu401 io=0x300 irq=2 |
これにより起動時に modprobe sb が行われ, モジュール sb.o が読み込まれます. ここで重要なのが alias sound xxx のようにサウンドカードに必要なモジュールをエイリアス名からロードするようになっていることです. 例えば自身のサウンドカードが自動認識されない場合にはこのファイルに手動で書き込むことになります. その場合は以下のように書きます.
これは ESS Maestro2 での例です. これによりサウンドを鳴らすようにすることができるわけです.
次の例はちょっと古い事例ですが ISA non PnP カードの場合の認識例です.
まず, BIOSでサウンドカードの io, irq, dma などを確認しました. IRQ5,IO220,DMA1or3 のようです. ES1869は, サウンドブラスター互換として認識されるようですので PnP 設定後のサウンド設定でもそのように設定します. PnP 設定のところで自動認識しない場合, 考えられる原因は dma です.
と叩くと dma1 と 2 が使われていましたので 3 に変更したところうまくサウンドを鳴らすことが出来ました. IRQ でエラーになることもあります. サウンドカードの場合, 5,7,9 を使うことが多いのですが 5,7 でプリンター, 9 で NIC と衝突することがあります.
これらの設定がうまくいけば /etc/conf.modules( または /etc/modules.conf) は上述のようになります. うまくいかない場合は以下のコマンドでもサウンドカードの状態を確認できます(この例は TurboLinux の例).
これで出来上がったisapnp.confの内容を確認してみてます.
うまく認識するかどうかは,
でサウンドカードと IRQ,IO,DMA が正常に表示されれば認識自体はされてますのでこのファイルを /etc に移動して(これで起動時に読まれるようになります)もう一度, 設定し直してみます.
しかし気をつけなければならないのは例えば音楽CDからサウンドが聴けたからといってすべてのサウンドを聴けるというわけではないということです. サウンドブラスター互換のカードであってもこのような事はあります. ご自身のカードがカーネルでサポートされているのかどうかを確認してみた方がいいでしょう.
ここまでの例ではカーネルのモジュールを使いましたがカーネルでサポートされていない場合は ALSA か商用の OSS でサポートされている場合があります. その場合は ALSA か商用の OSS を使ってみましょう. OSS には商用版の他にトライアル版も存在しますので試してみることができます.
上述のようにカーネルでサポートされていないサウンドカードであれば OSS か ALSA でサポートされている可能性があります. それぞれのホームページに対応カードのリストがありますので参照してみましょう. ではまず OSS のインストールについて簡単にご紹介してみます. 以下のサイトより OSS (商用)をダウンロードできます. 商用と言いましても利用時間限定の試用版は, すぐにダウンロードできますので,
試してみてサウンドを鳴らすのに成功したらライセンスを取得すればいいでしょう. OSS はさすが商用だけあって ALSA よりも多くのサウンドカードをサポートしているようです. 例えば私の使っている ESS Allegro PCI は今のところ ALSA ではサポートされていませんが OSS ではサウンドを鳴らすことが出来ます.
osslinux393s-2217-UP.tar.gz
をダウンロードしたと仮定します. まずこのダウンロードしたバイナリを /tmp で展開します.
ここでいくつかの質問に答えていけばインストールは完了です. その中でサウンドカードの選択リストが現れますが普通は自動認識しますので手動で選択しなくて良いです.
インストールが完了したら早速, 起動してみます. /opt/ossがインストール先ならば,
と叩けば起動します.
ALSA は OSS のような商用ではありません. 以下のホームページから最新版が入手できます.
TurboLinux 6.0 ws のようにはじめから ALSA がインストールされていれば
を実行してまずデバイスファイルを作成します. 次に,
を実行し, 対話的にすすめていけばいいわけです. 設定が完了すれば
を最後に実行しましょう.
新規に ALSA をインストールしたい場合は, まず, ALSA の Web サイトから以下のドライバをダウンロードします. ここでは ALSA のバージョン0.5.10 を例にします.
alsa-driver-0.5.10b.tar.bz2
alsa-lib-0.5.10b.tar.bz2
alsa-utils-0.5.10b.tar.bz2
alsaconf-0.4.3b.tar.gz
ダウンロードしたら展開しインストールします.
インストールが無事, 完了したらデバイスファイルを作成するために以下のコマンドを実行しておきます.
次に alsaconf で設定を行います.
これでサウンドカードの設定を行います.
尚, ALSA がサポートしているサウンドカードのリストは以下のページで見れます.