mc.vst~ behaviour

janpanis's icon

I have a plugin (Cinematic Rooms Pro) that is (or better can be) surround. In a DAW it automatically switches to the surround mode depending on the surround settings of the DAW and then shows a surround panner tab. When I use mc.vst~ @chan 6 for instance, I do get the outputs, but nut the pan tab. According Liquidsonic modern plug in implementation asks and gets this info from the DAW. How to get this info from the MAX mc.vst~ object?

Roman Thilenius's icon

not sure why they say it would ask, the regular way is that the host triggers that bus count query itself.

from what i know vst~ does not do any BusSetup commands at all, it simply distributes its IO to the plug-in, if present/available in it.

how do you use it... in case you don´t do it already, have you tried the following... first load up the vst~ instance with the IO argument, and then load the plug-in using a message, i.e. later, when DSP is already on?

janpanis's icon

I set it up like in the acc. patch, I do get six outputs but not the surround tab. I know it's hard to try out, because you don't have the plugin. This is what Liquidsonics say:

Hi

There is no override as the plugin expects to be informed about the surround bed width by the host via the the standard bus width querying facilities provided by modern plugin APIs (AAX, VST3 and AU all support this well). It was a necessity many years in the past to signal intent within the plugin as the APIs couldn’t help with that information specification, but the host is able to act as the authority on this now, so I program assuming we should use the widths required by the host.

If your host doesn’t support that, I would drop them a feature request. 

Regards

Matt 

vst.maxpat
Max Patch

Roman Thilenius's icon

in max 8 it does not even work at all to use @chans.

using regular arguments to vst~ works fine here, though.

(windows, max 8, VST3, x64 below)


let me know if that fixes it in max 9, too.

don´t ask me why the vst~ helpfile nowhere shows an example for the object arguments.

Roman Thilenius's icon

the surround tab is unfortunately not a VST parameter, that would have been a good workaround in case ou dont like to click things with the mouse. but it opens fine when you click it.

janpanis's icon

With MAX 9 the mc.vst~ seems to work properly. I see you do have the Cienematic plugin! I also looked into the parameters list, it's huge but indeed no way to find a "switch" for surround (see patch). In a DAW it just works......

vst_V2.maxpat
Max Patch

Roman Thilenius's icon

do you (and everyone else) notice the fundamental difference between the (visible) result of [mc.vst~ 6 6] in my patch and [mc.vst~ @chan 6] in your patch?

janpanis's icon

Yes, vst~ 6 6 gives 6 "physical" inputs and outputs, mc.vst~ @chan 6 gives 2 "physical" inputs and outputs of which the ones seem to be the multichannel ones. MC keeps on being a bit mystic in how it reacts to connections..........

Roman Thilenius's icon

mc.vst~ is a bit strange and treats that different than most other objects. normally you would think that either all outlets (i.e. 2 or more) carry mc signals or there would be only one outlet. and of course, like it is, you can not run 3 copies of the plug-ins with it.

but they did it this way so that it kind of keeps patching compatibility to vst~.

i guess what am trying to say is that when you have trouble with a multichannel plug-in which doesnt work in some aspect when mc-vst~ only has 2 outlets, you could stick with [vst~ 6 6] - [mc.pack~ 6] and consider the extra CPU that it takes as lost.

unless somebody has a better idea, which does not seem to be the case...

janpanis's icon

Yes, tried all possibilities/variatons. What (a.o.) I don't understand is how in- and outputs are addressed when one inserts more than 1 plugin into the mc.vst~ (which seems to be the main goal of the mc of the mc.vst~). For me the manual is rather cryptic: https://docs.cycling74.com/legacy/max8/vignettes/mc_plugins

janpanis's icon

surprise! When I insert the cinematic plug into vst~ 6 6 it suddenly gives the surround panner...........

janpanis's icon

weel found out this inb the end: vst~ 3 3 gives CR with L-C-R, vst~ 4 4 L-R front en L-R Rear, vst~ 5 5 L-R front-Center -L-R rear and vst~ 6 6 (and up) the same as 5 5, all with the plugin surround panner. When the number of in and outs differ, no surround panning.......... you tell me!?

janpanis's icon

The same goes for mc.vst~.......... but then you don't have mc in's and outs anymore, you get the individual ins and outs like in the non mc version. Still don't understand the claimed possibilty to have more than one plugin in a mc.vst~ though

janpanis's icon

I mean mc.vst~ 5 5 .

Roman Thilenius's icon

yes, using mc-vst~ 6 6 is kinda pointless, so you can use vst~ 6 6 as well.

mc.vst~ is not just "wrapped as mc" like mc.cycle~, it obviously works somehow different on the inside, and the way how the 6 outputs of the plug-in are packed into an mc signal seems to be what makes many multichannel plug-ins not understand what the host is doing from the user perspective.

"you tell me!?"

i can only guess. since vst~ 6 6 gives correct instructions to the plug-in, the plug-in automatically changes its setup depending in IO channels, like in nuendo.

LCR for 3 IO and quadro (or prologic II without center) for 4 IO seems most logical and what i would expect. (if you need left-right-rear just add the rears of quadro and * 0.7)
but there are of course also plug-ins which can only do stereo and 5.1