第13回: MIDI/OSC

今回のプロジェクトファイル

今回の授業では電子楽器や、DAWなどのソフトウェアとMIDIやOSCを使ってコミュニケーションする方法を紹介します。

MIDIデバイスのセットアップ

TouchDesignerでMIDI機器を使うときは、Dialogs > MIDI Device Mapper を選択して MIDI Mapper ウィンドウを開きます。

Create New Mapping ボタンを押して、新しく追加された行の In DeviceOut Device をそれぞれ選択すればMIDI機器のセットアップは完了です。

接続ができていれば MIDI Console に入力されたMIDIメッセージが出てくるはずです。

また、MIDI In CHOP.mid ファイルも読み込むことができます。デフォルトの状態だとノートNoが60のものしか読み込まない設定になっていますが、 Note > Note Scope のパラメーターを 1-127 などに変更するとそれに応じて取得できるノートが変化します。

MIDIの入力

/project1/MIDI_INPUT

MIDIの入力には Midi In CHOP を使います。

MIDI In CHOP では、チャンネルの順番が入力のあった順で並べられてしまうので、Replace CHOP を使って必要なMIDIのチャンネルを整理しておくと後々に使い易くなります。

チャンネル名は ch1n60 や、 ch1ctrl1 といった名前が自動的に割り振られます。そのチャンネル名が各ツマミや鍵盤のIDになります。

MIDIの入力を使ったアニメーション

/project1/MIDI_INPUT_ANIMATIOn

Event CHOP を使うと入力したCHOPのメッセージから時間軸をもったアニメーションを作ることができます。

アニメーションはシンセサイザーなどでよく使われるADSRタイプのイベント時間軸に沿って並列に処理されるので、インスタンシングを使って簡単にアニメーションさせることができます。

MIDIの出力

/project1/MIDI_OUTPUT

MIDIの出力には MIDI Out CHOP を使います。

入力の時と同じように、ch1n60ch1ctrl1 のようなチャンネル名のデータを MIDI Out CHOP に入力すると選択したMIDI機器にメッセージが送信されます。

そこまで使用頻度は高くないかもしれませんが、CHOPを使って自分で考えたスケールにMIDIノートを変換したり、自動演奏システムのような物を作る時などに役に立つかもしれません。

仮想MIDIデバイス

仮想MIDIデバイスを使うとPC内の他のDAW等とMIDIメッセージのやりとりができます。

OSXでは IAC Bus というOSのデフォルト機能で、Windowsでは loopMIDI というフリーソフトウェアを使うのがオススメです。

How to setup a virtual MIDI bus

OSC

/project1/OSC

OSC In CHOPOSC Out CHOP を使うと、Maxなど他のソフトウェアとOSCを使った通信ができます。

ポートの設定さえできてしまえばとても簡単に使うことができますが、チャンネル名の先頭の / の扱いに多少注意が必要です。

TDAbleton

TouchDesingerとAbleton Liveを相互に接続する TDAbleton というツールを紹介します。(僕もそこまで使っている訳ではないので概要とサンプルを立ち上げてみるぐらいしかできませんが…)

TDAbleton - TouchDesigner Documentation

セットアップ

TDAbletonを使うには、Ableton LiveにTDAbleton用のファイルをセットアップする必要があります。

  1. TouchDesignerがインストールされた場所から TDAbleton のフォルダーを探します。Windowsの場合は C:\Program Files\Derivative\TouchDesigner099\Samples\TDAbleton 、OSXの場合は TouchDesigner.app/Samples/TDAbleton あたりにあるはずです。
  2. Samples/TDAbleton/TouchDesigner のフォルダーを、MIDI Remote Scripts フォルダーにコピーします。Windowsの場合は %HOME%\ProgramData\Ableton\Live x.x\Resources\MIDI Remote Scripts\、OSXの場合は Ableton Live.app/Contents/AppResources/MIDI Remote Scripts/ あたりにあるはずです
  3. Ableton Liveを起動して、Perference を開き、Link MIDI のタブの中の Control Surface から TouchDesigner を選択します

Ableton Liveのセットアップが終わると、PalletTDABleton > tdAbletonPackage をネットワークエディターにドラッグ&ドロップして作成します。

Ableton Liveで Samples\TDAbleton\Demo Project\TDADemo Live Set\TDADemo Set.als を開くと、TDAbletonと接続され、各トラックの情報や、エフェクトのパラメーター等が同期しているのがわかると思います。