したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

C++でVST作りの指摘・質問

9ちあ.dat:2011/04/23(土) 12:03:40
こんにちは。
DLLを作成するときに使う、「vstplug.def ファイル」についての質問がございます。
よろしくお願いいたします。


このファイルの中身は、最初は、

EXPORTS
VSTPluginMain
main=VSTPluginMain

ってなってますよね。

そこで気になったのですが、
「最小構成のVST作成方法」→「AudioEffect* createEffectInstance()関数の作成」 の項目に記述されている、
AudioEffect* createEffectInstance()
を、VSTホストから使用するためには、自分で vstplug.defファイル の中身を

EXPORTS
VSTPluginMain
main=VSTPluginMain
createEffectInstance

と、書き換える必要があるのでしょうか。


それとも、VSTホストは、
最初からdefファイルに記述されている「VSTPluginMain」メソッド を利用することによって、
VSTプラグインを使用するのでしょうか?


ちなみに、
vstpluginmain.cppファイルにて、VSTPluginMainメソッド は、次のように定義されていました。

VST_EXPORT AEffect* VSTPluginMain (audioMasterCallback audioMaster)
{
// Get VST Version of the Host
if (!audioMaster (0, audioMasterVersion, 0, 0, 0, 0))
return 0; // old version

// Create the AudioEffect
AudioEffect* effect = createEffectInstance (audioMaster);
if (!effect)
return 0;

// Return the VST AEffect structur
return effect->getAeffect ();
}

これを見ると、VSTホストアプリケーションは、
AEffect構造体を利用するのだろうか?
とも思えます。
しかしその場合、new した AudioEffectインスタンスは、いつ解放されるの?
放っておいて、メモリーリークは起こらないの?
等と、心配事があります。


VSTホストアプリケーション(SonarとかCubase等)は、
どのようにして、VSTプラグインを使っているのでしょう。

今、色々試して、試行錯誤している最中です。

お時間がございます時で構いません。
管理人様が、ご存知のことがございましたらアドバイス頂けないでしょうか?

よろしくお願い致します。


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板