I want to detect events from the VST3 host (DAW) such as "user clicked record while this track was armed" or, inversely, "user stopped recording."
For a more concrete example, in processor.cpp
in a newly created VST3 plugin, I want to do the following:
tresult PLUGIN_API OBS_BridgeProcessor::setActive(TBool state)
{
// Call the parent's setActive() method
tresult result = OBS_BridgeProcessor::setActive(state);
if (state)
{
// Plugin is activated
OBS_BridgeProcessor::checkTrackRecordingState(); // see below
}
else
{
// Plugin is deactivated
// Perform any necessary cleanup or reset
}
return result;
}
void OBS_BridgeProcessor::checkTrackRecordingState()
{
// to-do: Check if DAW is recording or not
}
Searching for "record" in the VST3 interfaces documentation yields no results: https://steinbergmedia.github.io/vst3_doc/vstinterfaces/index.html
It seems that "recording" as a concept might be very DAW specific, and therefore not supported by VST3. If so, I'd greatly appreciate clarification on the scope of VST's capability. If the answer is simply "that is not possible with VST3", then that would be the correct answer to my question.
It might be possible that I have to use some kind of MIDI or other automation event to send a parameter control message to my VST device. If so, that's what I'll do. For reference, I'm using Ableton Live 11.