この連載ではノウハウ0の状態からMax9で制作に関するプログラムの自作を目指します!試行錯誤をしながら一緒に無限の可能性を探っていきましょう。※Max for Liveについてはこちらの過去記事をご覧ください。
こんにちは。タムラです。
前回の記事に続き思わぬ落とし穴をM4Lで埋めてみよう!という内容です。
【前回記事】Max9をはじめよう#6-1:LiveのエフェクトでDJをやりたい…
M4LでFLX4(rekordbox)のEQの挙動を再現したデバイスを作ってしまう
M4LデバイスにEQノブをアサイン、変換後の挙動を『EQ Three』にアサインする
今回は作戦Bを取ります。今回の件だけにとどまらず応用が効きそうな点と、Aに比べて手軽と判断した為です。
非常にシンプル。

これを目指します。
一歩づつ。変換を挟まず、ノブAからノブBにスルーアウトさせます。
まずつまづいたのが、オーディオトラックなのでMIDIエフェクトが刺さりません。一瞬頭を抱えましたが、ただ入力されたMIDIをバイパスしたいだけ(Live内のMIDI情報は必要ない)ですので全然問題ありません。というかオーディオ信号はそのままスルーさせないといけないのでAudio Effectで作らないといけませんね。
そして必要なのはたったこれだけ

これで右のノブと左のノブが同期、かつFLX4で触ることができました。
『ノブ2つあればいけるでしょ!』と軽く思ってましたが、全然そうじゃありません。
想定は
ノブB → EQ Three
そうなんですよね
マクロを使ったとしても、マクロ→ノブBと並列でマクロ→EQ Threeはもちろん可能ですが、マクロのパラメータを別の内部パラメータに追従することはLiveの機能内ではできません。
んー…
先ほどの『ノブB→EQ Threeの直接アサインはどう考えてもできません。』は訂正します。M4L側からノブBではなくEQ Threeに直接信号を同期させる方法がありました。
Live APIです。
Live APIを介することで、その枠組みを飛び越えることが可能になります。
Live API を使うと、M4L は以下のような「命令リスト」を Ableton Live に対して直接投げることができます。
「現在のトラック(live_set tracks N)の、1番目のデバイス(devices 0)にある、ゲインパラメーター(parameters 1)の値を、ノブBの数値と同じに書き換えなさい」
これで『ノブB → EQ Three』ではなく『ノブB → Live → EQ Three』という信号の流れが成立します。これは使えそう!
サクッと作るつもりが長期戦になりそうです…
続きはまた次回!