VST3.6における再生状態の取得
VSTプラグインを作成する際、ホストアプリ(DAWなど)から再生状態を取得したい場合があります。
再生状態は音声処理クラスのprocess()関数の引数ProcessData& dataに保存されています。
実際に再生状態を取得する方法は下記となります。また、録音中かどうかについてもついでに取得しています。
ホストアプリ(DAWなど)によっては、取得できない場合もあります。
(情報を取得できなかったホストアプリについてはコメント欄や掲示板、Twitterなどで教えていただけると助かります。)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
tresult PLUGIN_API MyVSTProcessor::process(ProcessData& data) { // ~~中略~~ // data.processContext->stateは「ホストアプリ(DAWなど)がどんな状態なのか?」 // 「ホストアプリ(DAWなど)から何の情報が取得できるか?」を指定するフラグとなっている。 // data.processContext->kPlayingのフラグが立っている場合、 // ホストアプリ(DAWなど)は再生中である。 if (data.processContext->state & data.processContext->kPlaying) { // 再生中の処理をここで行う // さらに、録音中かどうかをチェックする // data.processContext->kRecordingのフラグが立っている場合、 // ホストアプリ(DAWなど)は録音中である。 if (data.processContext->state & data.processContext->kRecording) { // 録音中の処理をここで行う } } // ~~中略~~ } |
ホストアプリ(DAWなど)が再生位置を取得する方法はこちらです
また、上記以外にもVST3.6についての情報があります。下記をご参照ください。
また、質問やご指摘はコメント欄や掲示板、Twitterでいただけばとおもいます。
■掲示板
■Twitterアカウント:@vstcpp URL:https://twitter.com/vstcpp