Hi, I’m sorry to bug you with this issue (originating from Multibus API ), but I can’t achieve more than 8 channels output without the following patch, can you please have a look at it?
Can you be more specific? Are you limiting the channels somehow (by overriding isBusesLayoutSupported or by using the Projucer’s channel configuration field)?
By replacing discreteChannels(6) with create5point1() it connects all 6 outputs correctly when I add the plugin to a multi-channel bus with 5.1 or 7.1 configuration.
Any ideas what may be wrong here? Do I have to check the AudioChannelSet in isBusesLayoutSupported()?
If you want to only allow 6 discrete channels (yes discrete channels are their own layout which are distinct from 5.1 surround) then you can use the following:
Thank you for this nice explanation. I was for example using discreteChannels(10) and tried to add this plugin to a Auro 9.1 Bus in Nuendo. Regarding your post it would require a create9point1() function to make this work.
Is there any reason why this is not available or could I simply add it by following the scheme of the other createXpointY() functions?
Hi!
I got similar problems with VST plugins having >8 channels and the JucePluginHost using the latest JUCE version from develop.
It seems when you set your plugin channel configuration to >8 channels and not providing the isBusesLayoutSupported method the Plugin Host crashes while loading the plugin.
You can easily test this by changing the plugin channel configuration to >8 from the JuceDemoPlugin and commenting the isBusesLayoutSupported method.
Further, if you implement isBusesLayoutSupported, is it even possible to load the plugin with eg. 32 channels in the JucePluginHost? I only see max 7.1 if I want to change the channel configuration.
Yes, currently the JucePluginHost will only support max 7.1. It will support more but only if the default layout of the plugin has >8 channels. We need to add some text field to the IO config dialog to be able to specify more channels.
I have a similar issue. To investigate the problems I face with >8 channels, I attached a debug-session to a running host (in this case: Max/MSP). I use the constructor as follows:
The host then crashes in line 2006 (of the current JUCE repository on github) in juce_VST_Wrapper.cpp
And here’s why: In line 276, which reads findMaxTotalChannels (maxNumInChannels, maxNumOutChannels);,
the values of maxNumInChannels and maxNumOutChannels each equal to -1.
Is this a bug? Shouldn’t these values be set (correctly) at this point of the instance creation? If not, could you please explain in more detail, how to get more than 8 channels configured, Fabian? Unfortunately I could not get there, utilizing your answers to previous posts by other users in this thread. Thanks in advance!
Best regards,
Christian
Edit:
Here’s some additional info I forgot…
For any other number of channels >8 the same happens
Using the channel config field in the Projucer with e.g. {64, 64} there was no crash and everything worked perfectly fine. In your ADC’16 talk on the multibus features you suggested to not use this anymore, so I don’t…
Yes, that’s very strange. Seems like a bug but I can’t reproduce this. I’ve added your exact bit of code into the GainPlugin example here and it seems to work fine:
Yes exactly! Make sure to not use that field. Also please check that you are on the latest develop branch. We’ve just fixed a few bugs in there recently (for example yesterday).