We’ve long had support for VST2, but I’m trying to add VST3 support.
I have them loading and I created a Steinberg::Vst::HostProcessData object and call m_pAudioProcessor->process but it just doesn’t output any new data with some plugins (and some do) in the Data.outputs->channelBuffers64.
m_pProcessComponent->setActive(true);
m_pAudioProcessor->setProcessing(true);
...
// process your audio
m_pAudioProcessor->process(..);
---
// when finished and you do not want to call any process any more
m_pAudioProcessor->setProcessing(false);
..
// want to disable the plug-in
m_pProcessComponent->setActive(false);
I do not know what is wrong with what you are doing, but I would suggest to use a simple VST3 plugin and modify it so that it logs every single call. You can then load the plugin in VST3PluginTestHost for example and look at the output to see what gets called in which order and with which parameters… then do the same with your host and compare the difference…