>>> As for the case of very long ramps, I've had a read of the AU docs. It works like this: ... <<< By comparison, here's how ramps are done in DirectX. When a plugin exposes parameters, it exposes parameter info through a query method. This information includes information such as data type, name, strings (for enumerated parameters). One bit of information is bit-field which states the kinds of shapes that are supported. DX8 supports jumps (instant changes), linear ramps, 2nd order (quadratic) curves, and sin/cos shapes. In this approach, there is an implicit cooperation between the host and plugin in sending ramps. If a plug says it supports linear ramps, then the host may (or may not) send them. The problem is, from a host perspective, users want to specify all ramps for all kinds of plugins. They don't want to be restricted in how they do their automation because a plugin doesn't happen to support a particular kind of ramp. Also, the user might do copy/paste editing that pastes a non-supported kind of ramp onto a plugin's automation track. So we must necessarily have code in our host to decimate all flavors of ramps into instananeous jumps. BTW we use this same decimation code to decimate MIDI ramps into discrete MIDI messages. (We let people assign linear ramps to CC and xRPNS). Which raises another point: I believe restrciting ramps to real-valued parameters is too restrictive. MIDI is a concrete case where it makes sense to allow a ramp through integer values. I can also imagine the creative potential of ramping through enumerated parameters. So my desire for ramps in GMPI in this: Req: The meta-data for the controls exposed by a GMPI plugin will be an indication of the kinds of ramps that are supported by the plugin. Req: GMPI must specify at least 3 kinds of ramps: linear, jump that can be rendered efficiently (eg without memory allocation, expensive DSP for recalc, etc), jump that cannot be rendered efficiently. ---------------------------------------------------------------------- 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