aRts - アナログ・リアルタイム・シンセサイザ
前のページ | 第 8章ユーティリティによる先進機能 | 次のページ

# 8.4. artsshell でサーバを設定する

Artsshell は artsserver CORBA インターフェイスに直接アクセスするユーティリティです。 よって artsserver が動いている時にのみ動作します。

たくさんの設定オプションを artsshell で調整することができます。

状態についての情報を取得する

  次のように起動します。

       artsshell -i

  キャッシュの使用状況、動作中のモジュールの数など、有益な状態情報が得られます。

       artsshell -s

  だと、aRts の実時間の設定をいくつか確認することができます。

キャッシュ容量

  サンプルを扱っているとき、それをartsserverが自動的にキャッシュに入れてくれると便利です。 しかし、100個のピアノサンプルをロードした時など、最初の設定の8MBでは十分でない場合があります。 これを増やすには、次のようにします。

       artsshell -C <cachesize in KB>

リアルタイム(レイテンシー)パラメータ

  コンピュータ、アプリケーションによっては、最初のレイテンシーが最適でない場合があります。 例えば、aRts がオーディオサーバの仕事だけしていればよく、mp3 を少しだけ聴くぐらいなら、 レイテンシーの値は10msも必要ではありません。 プレーヤーの停止ボタンを押したら少し間を置いて mp3 が停止するようにするのには十分ですが、 これには0.5秒がいちばんいいでしょう。

  レイテンシーパラメータは3つあります。 フラグメントの数、各フラグメントのサイズ、スケジューリング周期のサイズです。 サウンドドライバのバッファはフラグメント * バイト(各フラグメントのサイズ)からなります。 そのバッファは16ビットなら2で割られて、チャンネルの数がレイテンシーを決めます。 OSS の実行の仕組みについて詳しく説明した文書は、 http://www.4front-tech.com/pguide/audio2.htmlにあります。

  スケジューリング周期のサイズとは、 サウンドカードのバッファがあまっているのを aRts が感知したときに、 aRts がいくつのサンプルを計算するかを示しているものです。

  役に立つ結果がほしいなら、スケジューリング周期の遅延はフラグメントの遅延よりも小さくしましょう。 規則:フラグメントの遅延はおそらくスケジューリング周期の遅延と一致しているでしょう。 次のコマンドを使ってください。

       artsshell -F <fragments>:<size> -S <scheduling_cycle_samples>

  これらのパラメータを設定するために

デバッグ情報

  arts を開発しているとき、またはバグを探しているときは、次を利用してください。

       artsshell -D 1

  デバッグ情報が表示されます。artsserver からその情報を表示させるには、 printf を使うのと同じ要領で artsdebug を利用してください。 ただし、"debug.h" をインクルードする必要があります。

前のページ | Home | 次のページ
akaikggen で AKAI キーマップを構築する | Up | artscat によるオーディオサーバの機能性