この連載ではノウハウ0の状態からMax9で音に関するソフトウェアの自作を目指します!試行錯誤をしながら一緒に無限の可能性を探っていきましょう。
こんにちは。梅田店スタッフタムラです。初めて買ったギターはEpiphoneのLes Paul Specialもどきです。さて今回は前回つくったできそこないシンセをちゃんと演奏できるようにします。
#2-2で作成したシンセサイザーが無事MIDIで音階を制御できるようになりましたが鍵盤を離しても音が切れませんでした。ここを修正しまして演奏ができるまで持っていきたいと思います。
今一度パッチをよくみてみます。
まぁそりゃそうだ。「note in」の第一アウトレット(ノート番号)だけが後段つながっており、鍵盤を押すor押さないの情報は一切伝達されていません。というわけでどうにかして鍵盤を押した判定の情報を抜き出し、後段に伝達していきます。
鍵盤を押している判定についてはベロシティを使っていきます。前回「note in」の第二アウトレットから抜き出した数値です。押してない時は当然0、押した時は1〜127が出力されます。つまり0か0以外かで信号を制御すればいいわけです。そこで結構悩みまして唯一思いついたgate~のオブジェクトを組み込みました。
エフェクターのゲートと同じ。0以外が第一イントレットに入力されるとゲートが開きます。
つまりですね…こうだッ!
ベロシティとゲートを直結しましてベロシティが0の時はゲートが閉じ、1〜127の時はゲートが開きます。これで鍵盤を離した時に音が切れるようになりました。が……本当か??
先のgate〜を使ったやり方は決して間違いではないと思うのですが、やけにモヤモヤするのです。というのも
・普通のシンセがこんな無理矢理な制御してるはずがない
・結局gateより前段では音が鳴っている。
やっぱおかしいよなーって思いながらシンセパッチの紹介動画をみていたら大事な要素が抜けていたことに気づきました。その要素については今回は紹介せず次回にとっておこう思います。結果が同じでもプロセスが全然違うのがプログラムって面白いなぁと思いました。
梅田店スタッフの長島さんに「SOOTHE2」というプラグインを紹介いただきまた。EQ感覚で使用できるレゾナンスサプレッサー&ディエッサーで、前から気になっていたもののそこまで絶賛するなら導入せねば!と思っておりました。ただちょーっと高いんですよね。
そこで色々SOOTHE2を調べていた時に、とある天才がMAXで「SOOTHE2」のクローンを作ったredditを見つけました。
早速インストールしたところ、良い!!SOOTHE2の本物はdemoで軽く触っただけですので曖昧ですがかなり近いように思いました。とにかくMAXでここまでできるなんて…と驚きました。このクオリティが開発者様のご好意か無料でインストールできます!ただ!!ドネーション(寄付)ができますのでインストールする際にはぜひご検討ください。
※弊社取扱製品ではございませんのでインストール、ご使用の際には自己責任にてお願い致します。
では。