Hi,
I found the AudioPluginHost and can open it and compile it (Visual Studio 2022).
I want to build a terminal based vst-host. I created a project without a gui and managed to set the basics up.
I created a VST3PluginFormat and called createInstanceFromDescription.
But coming from a beginner c-programmer (and musician) I cannot understand AudioPluginHost_App reads and processes the audio-data.
Here is my code (I cannot upload it because I am a new user)
juce::ScopedJuceInitialiser_GUI mm;
//juce::AudioDeviceManager aman;
juce::AudioDeviceManager manager;
manager.initialiseWithDefaultDevices(2, 2);
//std::cout << manager.getCurrentAudioDeviceType().toRawUTF8() << std::endl;
juce::PluginDescription desc;
desc.fileOrIdentifier = "C:\\Program Files\\Common Files\\VST3\\Emissary.vst3";
desc.pluginFormatName = "VST3";
juce::VST3PluginFormat format; //AudioPluginFormat
format.createInstanceFromDescription(desc, 44100, 0);
juce::AudioPluginFormatManager formatManager;
juce::AudioProcessorGraph graph;
auto plugin = formatManager.createPluginInstance(desc, 44100, 128, " ");
graph.addNode(plugin);
#if 0
formatManager.createPluginInstanceAsync(desc,
graph.getSampleRate(),
graph.getBlockSize(),
[&] (std::unique_ptr<juce::AudioPluginInstance> instance, const juce::String& error)
{
//addPluginCallback(std::move(instance), error, pos, useARA);
if (instance == nullptr)
exit(-1);
instance->enableAllBuses();
});
juce::AudioSourcePlayer fPlayer;
fPlayer.setSource(&graph);
manager.addAudioCallback(&fPlayer);
#endif
Thanks for your help!
