> From Tim: Just to start with, I *really* don't like a "facilitator" starting a topic with answers, rather than just questions (particuarly answers for the entire topic, and then saying that we should only deal with the first sub-topic, yeesh). In the future, please consider this and not abuse your role by trying to excert more power and domination over the process than you should. > 8a.0) Define "parameter". > > In XAP we called these 'controls'. My spin (off the top of my head): > > * A parameter is an explicity exported representation of some variable(s) > inside a plugin. > > * Parameters may represent things like knobs on hardware, plugs in a CV > module, coefficients of algorithms, or more abstract values like tempo or > MIDI controllers. > > * The set of exported parameters are a snapshot of the current state of > a > plugin. This all sounds like a fine definition to me. > * Saving and restoring a full set of parameters is sufficient to resotre the > state of a plugin 'patch'. > > This can work if one of the parameter types is arbitrary data (this is a > term that Premiere and AfterEffects use in their API's). Basically, in > addition to the host-intelligible parameters, a plugin can have arb data > parameters, which is basically an opaque chunk. VST has a variation on > this with its getChunk and setChunk functions, but they are split off > from being parameters, Yes, this complete either/or split between the two state descriptions, either entirely float parameters or entirely opaque data, has always been a problem and nuisance in VST, I would rather avoid that. I also like the idea of having arbitrary data parameters as an option when necessary, mixed in with known data type parameters. > * Parameters must be independant of each other. > > Is this necessary? I'm not sure that it is. I think that these are both totally vague statements, and the discussion of this point should begin with someone saying what inter-parameter dependencies and a general concept of its implementation. If no one has such desires, then I guess that means that parameters will be independent, which may be fine. But I have a feeling that Koen might have more to say about this... ;-) > * Parameters can change in real-time. I strongly object! Ummm, wait, I changed my mind, yeah, I don't think this point will need any debating... ;) Someone also mentioned something about parameter hierarchy. I'm not sure if that's needed, but parameter groups (or "clumps" as we now as in AU-land), are a great thing and I think that GMPI should at least do that. So I'm suggesting not so much a full-blown hierarchy, but one level of nesting. Parameters descriptions can indicate that a parameter is a member of a clump by specifying a clump ID, and then the plugin can supply a list of clump IDs with names for each clump. This allows for the possibility of much better generic interfacing to the plugin (like providing parameter list with well-organized sub-menus, arranging parameters in logical groups in a generic GUI, etc.). Marc __________________________________ Do you Yahoo!? Yahoo! SiteBuilder - Free, easy-to-use web site design software http://sitebuilder.yahoo.com ---------------------------------------------------------------------- Generalized Music Plugin Interface (GMPI) public discussion list Participation in this list is contingent upon your abiding by the following rules: Please stay on topic. You are responsible for your own words. Please respect your fellow subscribers. Please do not redistribute anyone else's words without their permission. Archive: //www.freelists.org/archives/gmpi Email gmpi-request@xxxxxxxxxxxxx w/ subject "unsubscribe" to unsubscribe