[Back!][MAIN][Title][NEWS][Link][YAMAHA XG普及の会][MuToPiA LABEL]


GSK's Home Page-MAIN Page-
雑記

更新日:1999.7.10

Linuxでサウンドカードを使ってみよう!

 今回は、Linuxで「SoundBlaster16 PnP」を使うというお話です。ディストリビューションはSlackware(Plamo)です。
 というのが、ディストリビューションは最初、Plamo1.3.1を入れていました。しかし、いろいろと入れ替えるうちにXFREE86が3.3.3.1になり、Kernelが2.2系になってしまい、原型をとどめなくなってきました。ということで、Slackware系のお話、ということになります。

 さて、今回使うサウンドカードはCREATIVE製の「SoundBlaster16 PnP」です。チップは、「ViBRA16c」というものです。最近は、廉価なSoundBlasterシリーズでその名前を使ったものがあったと思います。
 このカード、ISAバス用の平均的なサウンドカードで、必要最低限しか機能を持っていないという感じです。もちろん、MIDI音源なんて乗ってません(笑) 音も、ノイズがひどく、お世辞にもいいカードとは言えません。
 また、プラグアンドプレイに対応しているのはいいのですが、Linuxだと必ずしもいいとは言えません。プラグアンドプレイ非対応の方が設定がしやすかったハズです。というのも、Linuxは自動で設定パラメータを拾ってくれないからです。もちろん、PCIバスのものは自動で拾うんですけどね(^^;
 そのために、様々なツールを使い工夫する必要があるわけです・・・。

 一般的には、「isapnp」というツールを使って設定することになっています。しかし、これが使い方がよくわかりません。どうも自動でパラメーターを拾ってくるようなツールではないみたいです・・・。そのあたりをちゃんと書いてるところはこちらです。

 そこで、僕はOSSという商用のサウンドカードのドライバに目を付けました。とりあえず、音が出るかどうかだけでも試してみよう、ということで早速拾ってきてドライバをインストールしました。インストール自体もかなりお手軽です。Windowsのソフト並ですね(笑) ただし、Kernelでサウンド機能をオフにしておく必要があります。また、Kernelの状況次第ではインストールできないので、Kernelをmakeしなおす必要があるかもしれません。
 で、インストールしたところ、ほとんどのパラメーターは自動で取得してきてくれます。インストール後、「soundon」で音が出るようになり、「soundoff」でサウンドカードをオフに出来ます。おかげで、あっさりと音が出るようになりました。しかし、これは20分しか使えないという限定版です。レジストのやり方はよく見ていないのでわかりませんが、永久的に使おうと思うとお金を払う必要があります。
 そこで、ふと思ったのですが、どこかにOSSが取得した情報をファイルとして保存していないか、ということです。マシン情報(PCIの状態とかIRQの状態とか)はLinuxのKernelが/procというディレクトリの中に保存しています。それと同じようなことをOSSがしていないか、ということを調べてみますと・・・ありました(場所はインストール時に決めることが出来ます。デフォルトでは「/usr/lib/oss」ですね)。それをメモっておいて、OSSをアンインストールし、Kernelの再構築をはじめました。で、そのメモっておいた情報通りに設定をすませ、Kernelをmakeし、再起動・・・するとちゃんと起動時に認識してます! さっそく、「cat hogehoge.au > /dev/audio」すると、音が出ます。

 そういうわけで、商用ドライバを一瞬だけ放り込んで置いて、その設定情報だけを横取りするという形でなんとか音が出るようになりました。やっぱ普通のPCIサウンドカードを買う必要があるんでしょうかねぇ。YAMAHAのYMF724がKernelレベルで対応してくれたら速攻買うんですけどねぇ〜。

サウンドカードに関するリンク

writed by Akimasa Kajitani 1999.7.10