vst~ channel count: different behavior in Max 7 and Max 8

Daniel Rudrich's icon

Hi guys,

I am one of the developers of the IEM Plug-in Suite, Ambisonic plug-ins for up to 7th order.
Each plug-in supports all orders, and that's the reason I am writing:

With Max 7, the audio buffer had always the maximum number of channels (64), no matter what input/output arguments I entered e.g. 'vst~ 16 16 pluginName'. That's not perfect, but it worked, as there were always enough channels available.
In Max 8, not the maximum number of channels is chosen, but the smallest possible one. That's kind of bad, as the plug-ins then produce only 0th order Ambisonics, which is basically mono.

I looked a little deeper into it, and found out, that Max 8 isn't supporting Juce's 'AudioChannelSet::discreteChannels(64)'. When I change it to e.g. 'quadraphonic()' I correctly get a buffer of 4 channels. As far as I know, VST supports 'only' channel layouts up to 5th order.

So here my questions: Is there a way to support the discreteChannels layout? How can I make the vst~ object use a buffer channel-count according to the input output statements in the object? This basically would improve performance in general, as not needed channels don't have to be cleared. Or is there any particular reason for that behavior I just don't get? :)

Or is there maybe a 'pluginCanDo' to ask for that information? For comparison: Reaper has something like that, with it enabled, it reports the current channel count to the hosted plug-in. Also Plogue Bidule reports exactly the number of in/outs.

Thanks!

Edit: Just saw that there's a dev forum, admins: feel free to move this thread there if it's more appropriate there!

Best,
Daniel

Noah Neumark's icon

Any resolution to this issue? Where does this conversation continue on the dev forum?