Audio Plugin Host - Voxengo SPAN

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()

Thanks @daniel, that’s what I shall do then.

Keep me updated, I am missing that step in my DAW as well…
Haven’t found the time yet :wink:

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];


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.)

:rofl::rofl: 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 :roll_eyes: