- // ============================================================================================
- // このVSTのを生成するための関数
- // ============================================================================================
- AudioEffect* createEffectInstance (audioMasterCallback audioMaster)
- {
- //newでこのVSTを生成したポインタを返す
- return new MyTremoloVST (audioMaster);
- }
-
- MyTremoloVST::MyTremoloVST (audioMasterCallback audioMaster)
- : AudioEffectX (audioMaster, MY_VST_PRESET_NUM, MY_VST_PARAMETER_NUM)
- {
- //VSTの初期化を行う。
-
- //以下の関数を呼び出して入力数、出力数等の情報を設定する。
- //必ず呼び出さなければならない。
- setNumInputs (MY_VST_INPUT_NUM); //入力数の設定
- setNumOutputs (MY_VST_OUTPUT_NUM); //出力数の設定
- setUniqueID (MY_VST_UNIQUE_ID); //ユニークIDの設定
-
- isSynth (false); //このVSTがSynthかどうかのフラグを設定。
- //Synthの場合…true、Effectorの場合…false
-
- canProcessReplacing (); //このVSTが音声処理可能かどうかのフラグを設定。
- //音声処理を行わないVSTはないので必ずこの関数を呼び出す。
-
- //このVSTのパラメータを初期化する。
- fTime = 0.0f;
-
- fTremoloSpeed = 1.0f / 4.0f; //トレモロの周期 0.25秒
- fTremoloDepth = 0.5f; //トレモロの振幅 0.5倍
- }
AudioEffectX(audioMasterCallback audioMaster, VstInt32 numPrograms, VstInt32 numParams)
引数 | 値 |
audioMasterCallback audioMaster | audioMaster |
VstInt32 numPrograms | MY_VST_PRESET_NUM((宣言部で定義済み。1) |
VstInt32 numParams | MY_VST_PARAMETER_NUM((宣言部で定義済み。2) |
関数名 | 戻り値 | 引数 | 概要 |
setNumInputs | なし | VstInt32 inputs | エフェクターの入力数の情報を設定する。 サンプルエフェクターではMY_VST_INPUT_NUM(宣言部で定義済み。2)としている。 |
setNumOutputs | なし | VstInt32 outputs | エフェクターの出力数の情報を設定する。 サンプルエフェクターではMY_VST_OUTPUT_NUM(宣言部で定義済み。2)としている。 |
setUniqueID | なし | VstInt32 iD | エフェクターのユニークIDを設定する。 サンプルエフェクターではMY_VST_UNIQUE_ID(宣言部で定義済み。2)としている。 |
isSynth | なし | bool state | 作成するVSTがシンセかどうかを設定する。 今回はエフェクターなのでfalseとしている。 |
canProcessReplacing | なし | bool state | 32ビット浮動小数点で音声処理できるか設定する。 サンプルエフェクターでは32ビット浮動小数点で音声処理を行うのでtrueとしている |
- MyTremoloVST::~MyTremoloVST ()
- {
- //VSTの終了処理をする。
- //このVSTでは特に実行する処理はなし。
- }