*VSTi サンプル vstxsynth に GUI パネルを付けてみる [#pea5aff6] vstxsynth は、VSTi、つまりシンセサイザーのサンプルプログラムです。 http://www.steinberg.net/324_1.html から VST Audio Plug-Ins SDK 2.4 をダウンロードすると中に入ってます。 しかしこのサンプルには GUI パネルが入っていません。 なので GUI パネルをつけてみようと思います。 **まず GUI 無し版をビルドしてみる [#eb96fb8f] vstsdk2.4\public.sdk\samples\vst2.x\vstxsynth にサンプルが入っています。 それを VisualStudio.NET2003 でビルドします。 プロジェクトファイルは win.vc2003 フォルダの vstxsynth.vcproj を使用します。 プロジェクトファイルのフォルダを移動する場合は [プロジェクト]-[プロパティ]の「C/C++」の「追加のインクルードディレクトリ」に 「vstsdk2.4」と「vstsdk2.4/public.sdk/source/vst2.x」を追加します。 ビルドすると vstxsynth.dll が作成されます。 これで GUI 無し版のサンプルは完成。 ***GUI 無しの場合にプロジェクトに追加する SDK プログラム一覧 [#k905c815] |追加のインクルードディレクトリ|追加するファイル| |vstsdk2.4/public.sdk/source/vst2.x|aeffeditor.h| |~|audioeffect.cpp| |~|audioeffect.h| |~|audioeffectx.cpp| |~|audioeffectx.h| |~|vstplugmain.cpp| |vstsdk2.4|aeffect.h| |~|aeffectx.h| |~|vstfxstore.h| **GUI を追加してみる [#xadee2b3] GUI の SDK は vstsdk2.4\vstgui.sf\vstgui フォルダに入っています。 プロジェクトファイルのフォルダを移動する場合は上記の GUI 無しに加えて [プロジェクト]-[プロパティ]の「C/C++」の「追加のインクルードディレクトリ」に 「vstsdk2.4\vstgui.sf\vstgui」を追加します。 GUI は AEffGUIEditor, CControlListener クラスを public 継承して作ります。 今回は EditorClass を作りました。(editor.cpp/hpp 参照) VstXSynth::VstXSynth に editor = new EditorClass ( this ); を追加してビルドするとただ表示するだけの GUI が作成されます。 ***GUI 有りの場合にプロジェクトに追加する SDK プログラム一覧 [#sb594c95] |追加のインクルードディレクトリ|追加するファイル| |vstsdk2.4/vstgui.sf/vstgui|aeffguieditor.cpp| |~|aeffguieditor.h| |~|cfileselector.cpp| |~|cfileselector.h| |~|cscrollview.cpp| |~|cscrollview.h| |~|ctabview.cpp| |~|ctabview.h| |~|vstcontrols.cpp| |~|vstcontrols.h| |~|vstgui.cpp| |~|vstgui.h| |~|vstkeycode.h| ***ダウンロード [#abdc3386] vstxsynth_gui フォルダと同じフォルダに vstsdk2.4 を置いて下さい。 #ref(vstxsynth_gui.zip)~ ---- [[前に戻る>VST Plugin]]