VSTi サンプル vstxsynth に GUI パネルを付けてみる  †
vstxsynth は、VSTi、つまりシンセサイザーのサンプルプログラムです。
http://www.steinberg.net/324_1.html
から VST Audio Plug-Ins SDK 2.4 をダウンロードすると中に入ってます。
しかしこのサンプルには GUI パネルが入っていません。
なので GUI パネルをつけてみようと思います。
まず GUI 無し版をビルドしてみる  †
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 プログラム一覧  †
| 追加のインクルードディレクトリ | 追加するファイル | 
| 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 を追加してみる  †
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 プログラム一覧  †
| 追加のインクルードディレクトリ | 追加するファイル | 
| 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 | 
 
ダウンロード  †
vstxsynth_gui フォルダと同じフォルダに vstsdk2.4 を置いて下さい。
前に戻る