Is this possible with Max? (VSTi related)

Feb 1, 2012 at 10:47pm

Is this possible with Max? (VSTi related)

Hello! I’m absolutely new to Max and wanted to ask whether it is possible to do the following thing:
1) load any VSTi plugin (I know that it’s possible)
2) display plugins’ own editor
3) list all available parameters (let’s say, in some sort of a table)
4) ability to pick any number of these params
5) display these params somewhere else on the screen visually as knobs and be able to change param values by turning these knobs (knobs should also represent value changes if they are mode through the plugins’ editor)
6) ability to group the selected params in groups and be able to enable/disable specified group(s)
7) ability to randomize values of the selected parameters; ideally randomization should be done according to specific algorithm; is it possible to use any programming languages to interact with objects?
8) link parameters to midi controller including one midi CC controls multiple params

As I said I’m new to Max. Gut instinct tells me that most of those things indeed can be done with Max. However I’m not sure whether they can be done the way I described. Especially I’m concerned about GUI part.
If you know any projects that implement any of the described things please let me know.

#61573
Feb 1, 2012 at 11:34pm

Absolutely possible. All of it, as far as I can tell.

Also, I believe if you google sufficiently you will uncover patches that already do most of this.

#222220
Feb 1, 2012 at 11:47pm

All of this is possible, although it is going to be a lot of work!

Supported programming languages that interact with objects are JAVA, javascript, lisp, python, C/C++.

#222221
Feb 2, 2012 at 3:11am

How does one use Python to interact with Max objects….is there a document somewhere on this topic?

#222222
Feb 2, 2012 at 7:32am

dhjdhjdhj: I think the preferred method is Jython?

http://wiki.python.org/jython/WhyJython

#222223
Feb 2, 2012 at 1:40pm

Below is something to get you started – if you look at the references files for the various objects you should be able to make it more streamlined but this is the core functionality you are looking for.

– Pasted Max Patch, click to expand. –
#222224
Feb 2, 2012 at 3:41pm

grizzle, thank you for the patch. I will definitely investigate it later.

#222225
Feb 2, 2012 at 4:21pm

Hi there,

quote “5) display these params somewhere else on the screen visually as knobs and be able to change param values by turning these knobs (knobs should also represent value changes if they are mode through the plugins’ editor)

Please bear in mind that, if you wish to display ‘real’ parameter values on the knobs, that VSTs generally report parameter values as a float 0. – 1. This can make displaying the real values in a max gui a little more awkward. I’ve overcome this , for example with the Lexicon Reverb VST, by making a mixture of lookup tables, scaling and simple max patches to do the math to get the real values. Some, like Lexicon’s size/time parameters, were a little tricky to implement!

Hope this helps,

Regards,
Leigh

#222226
Feb 2, 2012 at 9:47pm

thats all possible, but you will have to put some patience into
controlling the vst~ object until it works like you wish.

dont try all of these things at once, start with the helpfile and
the reference for [vst~].

-110

#222227
Feb 2, 2012 at 10:54pm

Alternatively, take a look at the wrapper I did for VSTs to hide some of the complexity. Here’s the blog entry that describes my GenericVST implementation.

http://deskew.com/component/content/article/19/76.html

#222228
Feb 3, 2012 at 4:55am

you have that on the examples of audiounit~.. just make something similar with vst~ and it should be ok

#222229
Feb 3, 2012 at 3:37pm

Regarding python, there is version of python built by Thomas Grill that
allows you to load python scripts and run them.

http://grrrr.org/research/software/

You can route messages from the python external to any other Max object you want.

#222230

You must be logged in to reply to this topic.