On Thu, Nov 24, 2005 at 04:53:17PM +0100, Koen Tanghe wrote: > In section 1.3 we talk about "audio" and "controls" as possible types of > inputs and outputs. These are the two fundamental types of data streams in GMPI. Audio data is delivered via buffers of audio-rate data in the GMPI audio sample datatype. Control data is delivered via time-stamped events. Each event may be one of several datatypes. > Then, in section 3.8 we talk about GMPI "events", but only in terms of > "event delivery to a plugin", no event delivery *out* of a plugin. Think of an event as a packet on the control wire. > Then, in section 3.11 we talk about "parameters" and say that plugins expose > their parameters to the host and that parameters are automatable (thus > directly modifiable by the host). We weren't clear on this. I see it one of two ways: "Parameters" are the sinks for control data - when you send control data it must terminate at a parameter. For example, the cutoff frequency knob of a filter plugin would be a parameter, as would be the host-to-plugin tempo syncronization of an LFO plugin. "Control inputs" are the sinks for control data. Control streams are made between control outs and control ins. "Parameters" are the user-interactive control inputs. For example, the cutoff frequency knob of a filter plugin would be a parameter, where as the host-to-plugin tempo syncronization of an LFO plugin would not. Of these, I think I prefer the first - "parameter" is just an alias for "control input". What think? I am trying to keep track of these clarifications for the fledgeling specification. > Now, do I remember correctly that: > - GMPI events and controls are one and the same? An event is a packet on the control wire. > - parameters can only be changed through GMPI events/controls? right > - a GMPI plugin can only have two types of inputs and outputs: audio and > events (= controls)? pretty much, modulo MIDI stuff > - parameter changes (either incoming or outgoing) all come through GMPI > events (= controls)? yes > a. "start audio sample generation for a new C4 note" > b. "signal a snare drum event detection at time offset xyz" > c. "change the cutoff frequency of the filter to 200 Hz" > must come in to (a and c), respectively out off (b) the plugin using GMPI > events through a control port (aarghh, another term...)? Pretty much. Whenever you go between plugins, you need some sort of "wire". That wire is a control signal which starts at a control output and ends at a control input. (we could switch to "source" and "sink" terminology if that is clearer to people..) > Or can a parameter change be done without going through a control port using > GMI events? Do you mean internal to a plugin or between plugins? > There's also the "clock/time related" input and output, but this will > probably be handled through special controller messages, but I could be > wrong, and for this post it doesn't matter really... Clock stuff can be just another control signal ---------------------------------------------------------------------- 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