この Solaris リリースでは、2 つの連携するドライバ、usb_ac および usb_as の実装によって、USB オーディオサポートを提供しています。オーディオコントロールドライバである usb_ac は USBA (Solaris USB Architecture) 準拠のクライアントドライバで、ユーザーアプリケーションのインタフェースを制御します。オーディオストリーミングドライバである usb_as は、再生中および録音中にオーディオデータメッセージを処理し、サンプル周波数と精度を設定し、usb_ac ドライブからのエンコーディング要求を処理します。
どちらのドライバも、USB オーディオクラス 1.0 仕様に準拠しています。
Solaris では、再生専用または録音専用の外部 USB オーディオデバイスをサポートします。オンボードの USB オーディオデバイスはサポートされません。サポートされるオーディオデータ形式については、usb_ac のマニュアルページを参照してください。
音量コントロール、低音コントロール、高音コントロールが 1 つである USB オーディオデバイスだけがサポートされます。USB オーディオクラス仕様についての詳細は、http://www.usb.org を参照してください。
USB オーディオデバイスは、USB コネクタのある SPARC Ultra および Intel プラットフォームでサポートされます。
ホットプラグ可能な USB オーディオデバイスがサポートされます。
主オーディオデバイスは、/dev/audio です。次のコマンドを使用して、/dev/audio が USB オーディオを指しているかを確認できます。
% mixerctl Device /dev/audioctl: Name = USB Audio Version = 1.0 Config = external Audio mixer for /dev/audioctl is enabled |
使用する USB オーディオデバイスを接続した後、 audioplay コマンドおよび audiorecord コマンドを使用して、次のファイルにアクセスします。
/dev/sound/N |
AUDIODEV 環境変数を設定するか、audioplay コマンドおよび audiorecord コマンドで -d オプションを指定して、特定のオーディオデバイスを選択できます。ただし、/dev/audio をオーディオファイルとしてハードコードしているアプリケーションでは AUDIODEV は動作しません。
USB オーディオデバイスを差し込むと、/dev/audio が使用中でない限り、自動的にそれが主オーディオデバイス /dev/audio になります。オンボードのオーディオから USB オーディオへ、および USB オーディオからオンボードのオーディオへ /dev/audio を変更する方法については、主 USB オーディオデバイスを変更するには および usb_ac(7D) のマニュアルページを参照してください。
USB オーディオデバイスがシステムに差し込まれると、それが主オーディオデバイス /dev/audio になります。そのデバイスは、システムをリブートした後でも、主オーディオデバイスのままです。USB オーディオデバイスが追加で差し込まれた場合、最後に差し込まれたデバイスが主オーディオデバイスになります。
USB オーディオデバイスに関するトラブルシューティングについての詳細は、usb_ac(7D) のマニュアルページを参照してください。
次の手順で、ホットプラグ可能な USB オーディオデバイスを追加します。
USB スピーカとマイクを差し込みます。
主オーディオデバイス /dev/audio は通常、オンボードのオーディオを指します。USB オーディオデバイスを接続した後、/dev/audio は /dev/sound ディレクトリで認識される USB オーディオデバイスを指します。
作成されたオーディオデバイスファイルを確認します。
% ls /dev/sound 0 0ctl 1 1ctl 2 2ctl |
左右の USB スピーカをテストします。
% cd /usr/demo/SOUND/sounds % audioplay -d /dev/sound/1 -b 100 spacemusic.au % audioplay -d /dev/sound/1 -b -100 spacemusic.au |
USB マイクをテストします。
% cd $HOME/au % audiorecord -d /dev/sound/2 -p mic -t 30 test.au |