Has anyone had any luck running Voxengo’s SPAN plugin in the audio plugin host demo? It loads only as a mono plugin, yet loads in every other host as 8in/8out?
The AudioPluginHost is not advanced enough to let you specify the required channel configuration. When the plugin is loaded, it starts up with a default channel layout. In an actual host there would follow the negotiation of a suitable configuration by probing AudioProcessor::isBusesLayoutSupported()
It would have to happen here in the example of VST3:
Or in your own code after the creation callback returns.
There are a few methods available, have a look over the docs, where ever BusesLayout is mentioned, e.g. checkBusesLayoutSupported()
and finally before prepareToPlay setBusesLayout()
Keep me updated, I am missing that step in my DAW as well…
Haven’t found the time yet
I thought I should start by checking the bus layout for the SPAN plugin. So I adding something along the lines of this when the plugin is first instantiated:
const int numIns = instance->getBusesLayout().getMainInputChannels();
const int numOuts = instance->getBusesLayout().getMainOutputChannels();
auto busArray = instance->getBusesLayout().getChannelSet(true, 0).getChannelTypes();
for (int i = 0; i < busArray.size(); i++)
{
AudioChannelSet::ChannelType chan = busArray[i];
Logger::writeToLog(AudioChannelSet::getChannelTypeName(chan));
}
The issue is the SPAN plugin only reports one input, and one output, with a channel type: centre. Every other multi-channel plugin I try reports the correct number of supported channels? I find this bus layout system very confusing to be honest.
Update: I just had time to build the AudioPluginHost myself…
If you right-click the plugin, you can select “Configure Audio I/O” and set a different format:
You can do that, but at least I could not actually get the extra inputs to work in the plugin. (Plain stereo inputs did work.)
Can’t believe I didn’t see that.
Seems the Voxengo doesn’t return true for canAddBus()
(I am guessing).
This is a good place to look at if you want to dig deeper:
I lifted that config IO stuff from the Audio Plugin Host and it’s working fine for me here. Thanks again. I’m still laughing at how I missed that menu command