私は最近jvstwrapperとjuceフレームワークの使用を開始しました。 VST SDKには、あなたの楽器のためのさまざまな「プログラム」のコンセプトがいくつかあります。たとえば、jvstwrapperとjuceの両方に、インストゥルメントを作成するために継承するクラスがあります。これらのクラスでは、いくつかのメソッドを実装する必要があります。どちらの場合でも、メソッドsetProgram、getProgramName、setProgramName、getNumProgramsなどを実装する必要があります。私は、各プログラムが楽器の設定の束を保持しているように見えます。しかし、実際にどのような場合に使用されていますか?そこにはどれくらいの人がいますか?VST機器の「プログラム」とは何ですか?
4
A
答えて
3
VSTプログラムは、ハードウェアROMプリセットまたはMIDIプログラムチェンジメッセージに似ています。以前のシンセサイザーに慣れていた方が、工場出荷時のプリセットを出荷して、それに合わせて調整することができれば、ハードウェアのアナロジーがより理にかなっています。ホストの中には、プログラムのリストをドロップダウンメニューとして表示して、ユーザーが工場出荷時のプリセットをすばやく参照できるようにするものがあります。
プラグインで使用できるプログラムの数については、VST SDKはプログラムインデックスにVstInt32
(32ビット整数)を使用します。したがって、プラグインは理論的には2147483647までの可能なプログラムを持つことができます。実際には、ほとんどのホストはこれを127(MIDIプログラムの変更メッセージと互換性がある)に制限しているため、127以上のプログラムを公開することは賢明ではありません。
IMHO VSTプログラムの概念は、時代遅れであり、時代遅れです。プラグインがVST SDKのFXP/FXB機能をサポートしているので、ユーザがパッチをハードディスクからインポート/エクスポートできるようになります。ご想像のとおり、Juceのコースはhooks for loading and saving VST preset filesです。
最新のプラグインの多くは、VSTプログラムをサポートしていません。コールでは、プラグインが0
を返すことはまったく受け入れられます。
大変お世話になりました。私はそれがプリセットのセットであると思ったが、私は "プログラム"が奇妙な言葉だったと思った!うまくいけば、私のように混乱している誰かがこの恩恵を受けることができます – Jonathan