この記事では、MIDIノートをソフトウェアシンセサイザーなどの外部音源に送信する方法について解説します。
注意:LogicとGarageBandは、ロードされたプラグインからのMIDI出力をサポートしていません。ただし、Reaktorをスタンドアロンで実行し、MIDI設定で仮想出力を使用してMIDI情報をこれらのDAWに送信することは可能です。
Reaktorはサウンドジェネレーターとして機能するだけでなく、内部および外部のサウンドジェネレーターと通信するMIDIシーケンサーの作成にも適しています。
以下のノート情報を正しい順序で送信する必要があります:
- Pitch event
- Note On event (Velocity)
- Note Off event (= 0)
この順序を維持することが重要です。最初にNote On eventを送信し、後でPitchを設定した場合、Pitchを認識させるには遅すぎます。その後、Pitchは次のノートに適用されます。
これは、モノフォニックMIDIノートがボタンによって生成される短いチュートリアルです。このノートがReaktorのステップシーケンサーからのものだと想像してみてください。
- 最初に、NoteはOrderモジュールに入ります。このモジュールは、イベントが次々に発生することを確認します。
- Pitchの値を最初に定義する必要があるため、Orderモジュールからのoutput 1が最初に生成され、Pitch値が作成されます。この場合、middle Cは60です。
- Reaktorのイベント処理エンジンによると、ピッチイベントブランチは、Orderモジュールの2番目の出力がノートイベントによって供給される前に、最後まで処理されます。
- Note On eventは、2番目のモジュール値からベロシティを取得します。この例では、ベロシティは値0.8に設定されています。ベロシティは、Note Pitch/GateモジュールのG inputで0〜127の標準MIDIベロシティ値にスケールアップされます(このモジュールのG inputについてはマウスオーバーのヒントをご参照ください)
- 最後に、HoldモジュールはNote Off timeを定義します。HoldモジュールがTrig inputでトリガーされた後、値0のイベントが100ミリ秒後に送信されます。このイベントはノートを終了します。 Note Off event(Velocity = 0)が欠落している場合、無限の長さのノートを生成します。
注意:このアンサンブルは、以下の添付ファイルセクション(midi_out.zip)からダウンロードできます。
上記で使用したNote Pitch/Gateモジュールの代わりに、Reaktorでより高度なChannel Message MIDI Outモジュールを使用することもできます。 これにより、MIDIノートのMIDIチャンネルを追加で指定できるため、さまざまなサウンドジェネレーターに送信される複数のシーケンサートラックを使用できます。 この目的のために、このモジュールの入力には以下の機能があります:
- ST input: Note OnおよびNote Offゲートメッセージを提供します(Note Onの場合は1、Note Offの場合は0)
- CH input: ノートを送信するMIDIチャンネルを定義します。
- Nr input: ノートのピッチを定義します。
- Val input: ノートのベロシティを定義します。
注意:このアンサンブルは、以下の「添付ファイル」セクション(midi_out_channel_message.zip)からダウンロードできます。