aRts - アナログ・リアルタイム・シンセサイザ
前のページ | 第 3章コンセプト | 次のページ

# 3.9. 楽器 (Arts バージョン 0.3.2 以降)

楽器の設計における合い言葉は、一回作ったら何度でも使える、です。

基本的に、aRtsでコンポーネントをデザインする時の合い言葉も、 一回作ったら何度でも使える、です。 イコライザ、エフェクト、ミキサのような装置、何に対しても当てはまります。 それにはまだ解決すべき問題がありますが。

再利用をできるようにするにはやるべきことがあります。

- 重要な第一点は楽器は Interface_MIDI_NOTE を中に持った ストラクチャであることです。 これは「Midi シンセサイズ」で述べた通りです。

- ストラクチャは適切な時に自ら終了します(midi シンセサイズを参照)。

- ストラクチャにはバスの名前の付いたポートが必要です。名前は文字列です。 そのポートは Synth_BUS_UPLINK に接続していて、 楽器の作成したデータを受け取ります。

- 楽器の名前は instrument_”自分で決めた楽器名”にします。 重要なのは instrument_ で始まることです。

ユーザがすぐに調節できるパラメータを用意したい場合は、 もう少し手間が必要です。

- 楽器の変更可能なパラメータには in オーディオ信号ポートがなければなりません。 例えば、"attack"、"decay"、"cutoff" パラメータがあるならば、 ストラクチャに3つのオーディオ信号ポートが必要です。

- 楽器のストラクチャに対して、楽器の「コントロールパネル」ともいえるストラクチャが必要です。 オーディオ信号内にある parent,オーディオの属性である x,y の合わせて3つのポートが そのストラクチャに必要です。

- 「コントロールパネル」ストラクチャの名前は instrument_”自分で決める名前”_GUI です。

- 「コントロールパネル」ストラクチャは、parent ウィジェットの中の x,y の位置に表示されます。 これはただ Gui_SUB_PANEL を利用すれば実現できます。

- 「コントロールパネル」ストラクチャには、 楽器に必要とされるパラメータに対応する出力がなければなりません。 先の例では3つのオーディオ信号の出力ポート"attack","decay","cutoff"が必要です。

面倒ですか？多分、そうでしょう。でも、できた楽器は再利用できます。 INSTRUMENT_MAPPER の例を御覧になれば、きっとその意義が分かるでしょう。

前のページ | Home | 次のページ
ストラクチャをまたモジュールとして利用する | Up | 起動時の自動ローディング