13.19. オーディオ出力トラブルシューティング

13.19.1. アプリケーションで使用されるオーディオ周波数
13.19.2. オーディオセッションを追跡する
13.19.3. オーディオデバイスのエミュレーション
13.19.4. 問題: オーディオが動作しない。
13.19.5. 問題: オーディオが Firefox で動作しない。
13.19.6. 問題: アプリケーションが $AUDIODEV 環境変数を無視する。
13.19.7. xmms プレーヤーの構成 (Oracle Linux)

13.19.1. アプリケーションで使用されるオーディオ周波数

Sun Ray クライアントは、アプリケーションが必要とするオーディオ周波数のどれでも使用するため、帯域幅を削減してスケーラビリティーを上げることができるようにアプリケーションオーディオ要件を構成できます。たとえば VoIP アプリケーションが 8kHz モノラルを要求する場合、Sun Ray クライアントは 8kHz モノラルのみを転送します。

13.19.2. オーディオセッションを追跡する

ユーザーが Sun Ray クライアントにログインするたびに、スクリプトは $AUDIODEV 環境変数をそのセッションに自動的に割り当てます。セッションごとに 1 つのutaudio プロセスが割り当てられます。詳細は、utaudio および audio のマニュアルページを参照してください。

13.19.3. オーディオデバイスのエミュレーション

ホットデスク中は、エミュレートされたオーディオデバイスがユーザーを次のセッションまで追跡します。エミュレートされたデバイスの名前は、$AUDIODEV 環境変数に記録されます。オーディオアプリケーションの役割は、$AUDIODEV を調査してその出力をそのデバイスに送信することです。

エミュレートされたオーディオデバイスは、/tmp/SUNWut/dev/utaudio ディレクトリにデバイスノードとして作成されます。このディレクトリツリーは、ブート時に再作成されます。

Note

/tmp/SUNWut/dev/utaudio ディレクトリは削除しないでください。このディレクトリを削除すると、utaudio セッションのユーザーは自分の擬似オーディオデバイスノードを使用できなくなります。

13.19.4. 問題: オーディオが動作しない。

  • キーボードの右上にある Sun オーディオキーを使用して、音量とミュートボタンをチェックしてください。

  • Sun Ray セッションのオーディオ設定を表示します。

    $ utsettings

    次に、ヘッドホンやスピーカーなどのオーディオ出力が正しく選択されていることを確認します。

  • デスクトップセッションで音量がミュートされていないことを確認します。

  • Sun Ray クライアントのオーディオ出力またはヘッドホンポートに外部スピーカーのセットを差し込んでみます。これが機能する場合は、Sun Ray クライアントのスピーカーが壊れている可能性があります。

  • オーディオが動作しているかどうかをテストするには、次を入力します。

    $ cat audiofile > $AUDIODEV
    

    Oracle Solaris では、/usr/share/audio/samples/au 内に PCM エンコードされた適切なサンプルオーディオファイルが用意されているため、このコマンド:

    $ cat /usr/share/audio/samples/au/gong.au > $AUDIODEV

    によってゴングの音が生成されるはずです。

    Linux では通常、PCM エンコードされたオーディオファイルは提供されていません。適切なファイルが見つからない場合は、このコマンドを使用して連続音を生成できます。

    $ perl -e 'foreach(-8..8){push(@v,pack("n",4*$_))} while(1){print @v}' > $AUDIODEV

    cat または perl コマンドがハングする場合は、ブラウザなど、現在オーディオを使用しようとしているほかのアプリケーションを終了させる必要がある場合があります。

13.19.5. 問題: オーディオが Firefox で動作しない。

  • 現在のリリースの Flash プラグインをチェックし、バージョン 9.0.r125 以降であることを確認します。Flash プラグインのバージョンをチェックするには、ブラウザで about:plugins を URL として入力します。

  • Firefox を終了してから、端末ウィンドウで明示的に再起動してみます。

  • 以上のすべてが失敗した場合は、Firefox を終了し、.mozilla ディレクトリに移動して「firefox」ディレクトリを firefox.jan09 などのほかの名前に変更します。それから Firefox を再起動し、オーディオが完全にクリーンな構成で動作するかどうかを確認します。

    オーディオがクリーンな構成で動作する場合は、ブラウザの以前の構成に問題があります。

13.19.6. 問題: アプリケーションが $AUDIODEV 環境変数を無視する。

一部のアプリケーションは $AUDIODEV に対応できず、無条件に /dev/audio/dev/dsp などの特定のオーディオデバイスノードを使用します。この問題に対処するために、Sun Ray Software は事前に読み込み可能な共有ライブラリ libc_ut.so を提供しており、これを使用してアプリケーションに割り込んでその動作を $AUDIODEV で指定されたデバイスにリダイレクトできます。このリダイレクションを有効にするには

  1. オーディオプレーヤーを起動したシェルまたはラッパーに移動します。

  2. libc_ut.so インターポーザーを参照するように、プレーヤーアプリケーションの環境で環境変数 LD_PRELOAD を設定します。

    $ LD_PRELOAD=libc_ut.so
    $ export LD_PRELOAD
  3. アプリケーションを再起動します。

13.19.7. xmms プレーヤーの構成 (Oracle Linux)

mp3 ファイルを再生するように xmms プレーヤーを構成するには、次の手順を実行します。

  1. xmms 出力プラグインの設定を、バッファリングを増やすように変更します。

  2. バッファーサイズを 10000 ms、プリバッファーのパーセントを 90 に変更します。

    コマンド行またはメニューから xmms を実行するときに、パネルの左側にある O (文字 O) をクリックして 「設定」メニューを表示します。

  3. 「オーディオ I/O プラグイン」ボタンの下で「出力プラグイン OSS ドライバ」を選択し、「構成」をクリックします。

  4. 「バッファリング」を選択します。

    1. デフォルトのバッファーサイズは 3000 ms です。これを 10000 ms に変更します。

    2. デフォルトのプリバッファーパーセントは 25 です。これを 90 に変更します。

  5. 「OK」をクリックしてから、「設定」パネルの「OK」をクリックします。

  6. xmms を終了して再起動します。