VST Matrix Mixer Optimization

Troy Witherow's icon

Hi all,

I still think of myself as a Max newb but I feel I have gone pretty far down the rabbit hole to create the attached patch (deleted some stuff for the version posted here). The goal of the patch is this: 1) load in up to 10 VST audio plugins 2) Have them all connecting to a matrix object acting as a matrix mixer. So I can route them all kinds of ways. 3) Then I can save the entire thing as a preset, which includes every param in each of the 10 VSTs and the entire matrixctrl configuration as well. 4) And, very importantly, I can ramp from , preset X to preset Y over some Z amount of time (ms) that I set with a numbox. It's really fun to paly with the ramp periods.

I think I am now in the end stages of patching this together becasue it works reliably and smoothly 90% of the time. However, with most patches I make, I get to a point where there is a fiddly little issue that I just don't know how to solve. The main issue I am running into is that sometimes when I ramp from preset X to Y over a ramp period of Z ms, it 'zippers' or clicks and pops the entire duration of the ramp.

Some notes about the patch: 1) I used a MIDI Fighter Twister to control this thing so there's a big-sh patcher within the patch dedicated to that. No issues there (that I"m aware of). 2) for the most part I'm using commercially popular plugins like SoundToys and Valhalla.

The main patch is VST.matrix and VSTRAMP is the abstraction that makes it possible to ramp between two VST settings.

I would be grateful to anyone who could help. Also, if there is anyone willing to help me really fine tune this thing, I am willing to pay.

VST.matrix.maxpat
Max Patch
VSTRAMP.maxpat
Max Patch
schlam's icon

Hello Troy

Maybe the example below can give you some ideas...

Max Patch
Copy patch and select New From Clipboard in Max.

Source Audio's icon

you need to set ramp time in matrix~ object.

like this

Troy Witherow's icon

thanks very much for the thoughts. for anyone who may one day read this, after implementing the @ramp in the matrix as suggested by Source Audio , and also swapping out a few java externals i was using for list interpolation with vexpr objects, the whole patch seems to be running smoothly. need to just use and abuse it now to see if i can find any other problems.