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

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

16nobu:2011/08/15(月) 11:09:11
> AudioEffectインスタンスは、いつ解放されるの?

>なおnewしたAudioEffectインスタンスの解放は
> ホストアプリケーション側で行われていると思います。

本当にそうか気になったのでざっとSDKとサンプルのコードを見てみました。

VST hostが受け取れるのは AudioEffect の持っている AEffect 構造体。

AEffect::object は そのAEffect自身を持っている AudioEffect へのポインタ。

AudioEffect::dispatchEffectClass で effClose がきた時に引数として受け取った AEffect構造体のメンバ AEffect::object (= AudioEffectのインスタンス) に対して delete している。

AudioEffect::dispatchEffectClass は AudioEffect のコンストラクタで、AEffect の dispatcher に設定されている。

minihostのサンプルを見ると、VST hostは終了処理として
> effect->dispatcher (effect, effClose, 0, 0, 0, 0);
のように effClose を投げる

ということで、当初の予想通り、AudioEffectのインスタンスの解放はVST hostの責任で、VST pluginを作る人は気にする必要はありませんでした。
情報共有まで。


新着レスの表示


名前: E-mail(省略可)

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

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

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

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