先週Kontakt内のエフェクトはあまり使わないと書きましたが、Kontakt側で最低限必要なのが、2つのADSRと基本的なフィルターです。これはDAW側では如何ともし難いのでKontakt内のセットアップが必要です。
当初スクリプトの書き方も説明しようと思ったのですが、中途半端に説明するわけにもいかず、本気でそれをやろうとすると今年の年末まで全部Kontaktの記事になってしまうので、今週ざっくり説明してしまいます(笑)
まずこれがKontaktの使いやすいところでもあり、最初わかりにくいところでもあるのですが、Filterをインサートできる箇所が3つあるんです。FilterはインサートできないけどInstrument Send FXというスロットもある(汗)まあとにかく色んなことできるんですよ(汗)
1) Group Insert FX
2) Instrument Insert FX
3) Instrument Main FX
このうちADSRエンヴェロープでコントロールできるFilterはGroup Insert FXだけなんです。なんとなくシンセサイザーの構造と照らしあわせると他のスロットにもインサートできても良さそうなんだけど、できません。鍵盤でトリガーしたADSRでFilterをコントロール(正確にはモジュレーションする、なんです)できるのはここだけです。
捉え方としては次の様に考えてください。今回作成中のライブラリは同じ音色をRRさせているだけ、なので1つのフィルターモデルをその3つで共有していますが、これが例えば別の音色をレイヤーさせて最終的にそれらをブレンドさせて使いたい場合に、Groupごとに異なったフィルターモデルをインサートできるんです。例えばこのサンプルはノコギリ波なので「Pro 53」を使おうかな、こっちの波形はムーグがモデルの「Ladder LP4」、いやいやMassiveのあの感じもいいから「Draft LP」をインサートしようかな、でもやっぱり「Vowel A」でランダムに変化させるとボコーダーっぽい感じも出るかな(期待通りじゃないかもねw)、、、とか色んな選択肢あるんです。
今回Groupが3つあるので、3つとも同じFilterをインサートしますが、そんな理由があるのでまあ面倒くさがらずにインサートしてください。以下のスナップショットでは最初のスロットにLadder LP4(個人的に一番使う4Poleのローパスフィルター)を、二つ目のスロットにシンプルなSV HP1(ハイパスフィルター)をインサートしています。HP1は60hz以下の無駄なローをカットしたりするのが目的です。これを3つ全てのGroupに対して行います。
次にLdr L4を選択した状態で、下の「Mod」をクリックすると以下の様になります。AHDSRを選択します。ローパスフィルター用のエンヴェロープを用意したってわけですね。
選択したら、右側が自動的に「Cutoff」になっていることも一応確認してください。これも3つのグループ全てに対して行なってください。
さて最後は次にスナップショットのようにScript Editorをクリックして左下の方に見えるEditをさらにクリック。さあスクリプト書いてみて!と言わんばかりに白いキャンバスが広がっているので、以下のスクリプトをコピペ。
スクリプトテキストファイル
※ダウンロード後zipファイルを解凍、txtファイル内テキストをコピペしてご利用ください。
ファイルを開くテキストエディタによってはコピペ時に改行が変わりスクリプトが使えないこともあります。その際はVisual Stdudio Codeなど無料のコードエディタ等で一度読み込んで、そちらよりコピペをお試しくださいませ。
そのキャンバスの右上に「Apply」のボタンが見えるから、そこをクリック。それでスクリプトが実行されます。
そうすると以下のようなノブとラベルが見える、でしょ??
念のためこのウィンドウのPresetからSave preset…を選んでセーブしておきましょう。Factory Presetと同じ階層がいいと思いますよ。
ここまできたら、左上のスパナボタンをクリック。全てのウィンドウが閉じて完成です!以下のようになるはずですが、それぞれのノブを右クリックするとLearn MIDI CC automationが出てくるので、MIDIコントローラーからCCでパラメーターをコントロールしたい場合はこれでアサインしていきます。
ここまで来たらVoicesの横にMax:1000となっている部分、これって再生発音数の上限なんですが、初期値は32だと思うのですがそれだと足りない事もゆくゆくあると思うので、ドドーンと1000くらいにしときましょう。この数値を変更してCPU負荷が増えたりすることはないです。
そして、最後はFileからSave asを選択してPatch+Samplesを選び、SaveしたいFolderを選択してセーブ。これは一番最初にスクリプトで複数のフォルダ作りましたけど、あれはあくまでもサンプル素材のマネージメントのためのフォルダなのであのフォルダにはセーブせずに、他のKontaktライブラリーと一緒のフォルダにセーブした方がいいです。将来PCの引越ししたりする時にその方が簡単ですからね。
最後に。
このスクリプトなんですが、KSP(Kontaktのスクリプト)は基本Lua言語がベースになっていますが原稿を書いている2025年6月13日の金曜日(!)現在、どのAIサービスでも、まっさらな状態から簡単なプロンプトでエラーなしで実行できるスクリプトを書いてはくれません。今のところやっぱりユーザー側に基本的な知識が必要です。ただKontaktのマニュアルは非常に良くできているので、それを部分的にAIに読ませて、KSPの改訂作業をAIに援助してもらう事はできます。
それから、Script Editor内のあの白いキャンバス内でスクリプトを書いて行くのはかなり苦痛です(笑)僕は昔はATOM(廃盤)、Sublime Text、そして現在はVisual Stdudio Codeと乗り換えつつ外部のテキストエディタを使っています。興味がある人はネットでもっと詳しい情報がたくさんあるので調べてもらうとして、KSPは現実的にマイノリティーであることに変わりはないので、他のメジャー言語の様に最初からパッケージがインストールされていることはないので、自分でインストールする必要があります。また、テキストエディタで書いて、コピーしてKontaktのスクリプトエディタに貼って〜を繰り返えさずとも、以下の手順でテキストエディタで書いたらすぐにKontaktに反映できるようになります。
1)パッチをサンプルと共にセーブ(決まった処方でKSPスクリプトをセーブする必要があるので特定のフォルダが必要なのだ)
2)Kontaktのスパナマークの下の方にInstrument Optionsがあるのでクリックして以下のスナップショットの様なウィンドウの下の方にResorce Containerの場所を指定する部分があるので、Creatをクリック。そうするとResourceフォルダを作成する場所を確認してくるので、サンプルとパッチを保存しているフォルダを指定して「Resorce」というフォルダを作る。
そのフォルダの中にScriptsというフォルダ自動的にできます。
3)テキストエディタのスクリプトを新たにそのScriptsフォルダの中に保存し直します。その時重要なのが、これ自動的に「.ksp」という拡張子が付けられるんですが、これを消して(!!)、「.txt」とテキストファイルとしてセーブするんです。これね〜Kontakt初心者にとっては有料級の情報なんですよ!これを読者の皆様に無料で提供している瀬川商店エライ!この手順マジで昔のオレに教えてあげたい(涙)
4)KontaktのScript Editorに戻って、白いキャンバス内スクリプトを一旦削除。中央に「Apply from…」というボタンが見えるのでクリック。Resources Folderの中に先ほど保存したtxtファイルがあるはずなので、それを選択。そして右上のApplyボタンを押す。これでテキストエディタで修正したらセーブ、Kontakt側でApplyをクリック〜という手順でスクリトをすぐにKontaktに反映できる様になります〜素晴らしい。
日本の劇伴作曲家でサウンドデザインする人、しない人います。ただ、スポーツ選手と違って上の世代が引退するまでそこそこ時間かかります。そこへ若い作家が食い込んで行こうと思ったらシンセ使えません、サウンドデザインしません、だと若い世代の映像作家とリンクして行くのが難しいかも、、、と思ったりもします。毎回複雑なスクリプトを書く必要はないので、今回紹介したスクリプトをテンプレートとして使えばそれほど多くの手数を必要とせずにライブラリー構築できると思いますよ。
もう30年以上前からLAの作曲家達は自分でサンプリングライブラリーを作ってモックアップやポストプロダクションに使っていたわけですからね。ハンズ・ジマー(日本のプロの作曲家でも「ハンス」と発音する人多いけど、アメリカだとハンズ、です。ファーストネームをドイツ語読みするなら、なんで後もドイツ語読みしないのかねw?)然り、またハンズのサンプリングライブラリーをプログラミングしていた若い頃のジョン・パウエル然り、かなりの作曲家がオリジナルのサンプリングライブラリーを構築しています。英語のマニュアルを読むのは確かにハードル高いですけどね。今はAIの助けも借りられるわけですから日本のシーンも変わるといいのに、、、とおじさんは思っちょるわけですよ。
Part 3 第36回 DAW(Reaper)でのサンプルチョップ/RRグループ分け
Part 4 第37回 KONTAKTマッピング/ラウンドロビン設定
Part 5 第38回 KONTAKT ADSR/フィルター設定とスクリプト