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.xaeffeditor.h
audioeffect.cpp
audioeffect.h
audioeffectx.cpp
audioeffectx.h
vstplugmain.cpp
vstsdk2.4aeffect.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/vstguiaeffguieditor.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 を置いて下さい。
filevstxsynth_gui.zip

前に戻る


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS