VST Presets


    Aug 31 2006 | 4:40 pm
    Hi All,
    As always, apologies for what might be the obvious, but...
    I'm trying to create VST/AU Plug-ins with Max/MSP, and I'm finding it a bit challenging to understand how Presets are saved and recalled.
    I've read the Ref Guide, and it's not quite clear what the easiest way to do it is - if there is someone who has indeed done this, and can explain it to me in a more plain English, I'd be hugely appreciative.
    My Plugin needs to be able to save MATRIX object states (32X128)as well as some other smaller parameters. It would be great if I could do this with several 'Programs', but even if it could just recall what it looked like when I last saved, I'd be happy.
    Could someone please help me by giving me a more concise explanation of which objects do this effectively, and how to use them when building VST/AU instruments?
    Thanks in advance, Joel

    • Aug 31 2006 | 7:34 pm
      OK, maybe I should be more specific here...
      Is there anyway to save the state of a MATRIXCTL within a Plugin?
      -j
    • Aug 31 2006 | 7:55 pm
      Interfacing a matrixctrl object to plugmultiparam is not a very straight-forward process. For Hipno, I developed an abstraction ( tap.plug.pp.matrixctrl ) that is available in the Tap.Tools.
      Hope this helps! Tim
    • Aug 31 2006 | 8:08 pm
      Right on!
      Looks like you just got yourself a new customer :)
      Cheers and thank you for your response and for your programming work!
      -Joel
    • Sep 01 2006 | 12:16 am
      Not sure if you've looked into the pattr family of objects, but that's an option
      Dan
      At 3:34 PM -0400 8/31/06, joelsquare wrote: >OK, maybe I should be more specific here... > >Is there anyway to save the state of a MATRIXCTL within a Plugin? > >-j
      -- Dan Nigrin Defective Records 202 Hack / PC-1600 User / VSTi Host / OMS Convert / Jack OS X http://www.defectiverecords.com http://www.jackosx.com
    • Sep 01 2006 | 9:19 am
      if you know the logical data format of your matrix, and you also know that VST presets are 32 bit float numbers, it should be no problem to convert the data from the matrix in order to save it via pp. custom solutions (other than using pp?s/plugconfig) are risky.
      eventually you might want to use plugmultiparam instead of plugparameter if it is a big matrix ...
    • Sep 09 2006 | 7:33 am
      joelsquare wrote: > My Plugin needs to be able to save MATRIX object states (32X128)as > well as some other smaller parameters. > > Could someone please help me by giving me a more concise explanation > of which objects do this effectively, and how to use them when > building VST/AU instruments?
      The easiest is the preset object, but will be difficult if you start to save more complex stuff inside subpatchers and so on, then pattr is your friend. (And its not that difficult either if you once understood the basics...) But beware, VST hosts do have their own way of saving presets as well, but they only include parameters which are connected to pp objects. For the host they are one dimensional floats between 0. and 1. Not so easy for your matrix unless you have 32x128 pp objects to save each point with its own parameter... You could also try to translate the matrix state into several floating point numbers and then store just these, look at the lftoa and atolf conversion tools which come with the pluggo installer. (One row of your 32x128 Matrix can be translated into one ascii number, 3 ascii numbers can be represented as one float...) If I find some time, I'll make an abhaXion to deal with Matrices in pluggos...
      But first you need to decide if you want to use your own preset saving and storing mechanism (which might confuse some users), or the one of the host. The host mechanism is important, as a user usually wants to save evereything including all presets within a session or a sequence (in case its a DAW or a sequencer), without the need of storing presets elsewise. then all these parameters have to be in a propriate format...
      Stefan
      -- Stefan Tiedje------------x------- --_____-----------|-------------- --(_|_ ----|-----|-----()------- -- _|_)----|-----()-------------- ----------()--------www.ccmix.com