[linux-audio-dev] XAP: Some thoughts on control ramping

David Olofson david at olofson.net
Tue Jan 21 12:29:01 UTC 2003


On Tuesday 21 January 2003 17.59, Steve Harris wrote:
> On Tue, Jan 21, 2003 at 05:20:56 +0100, David Olofson wrote:
> > Note that while this fixes the broken 0 duration case, it also
> > has the side effect that RAMP(value, 0) becomes equivalent to
> > SET(value). So, you don't really need to use the SET event
> > explicitly at all.
>
> Not quite, RAMP(new_val, 0) says that delta_val = val - new_val,
> whereas SET(new_val) says that delta_val = 0, val = new_val. Not
> really the same.

Right; that's the minimal implementation. I was commenting on the 
fall-through case variant I posted.


> It also gives the possibility of controls that dont accept RAMPs,
> though that may or may not be a good idea.

Well, having totally incompatible semantics for ramped and non-ramped 
controls means they have to be entirely different control types. You 
wouldn't be able to connect a ramped float32 output to a non-ramped 
float32 input or vice versa, without a converter in between.

It seems to me that if requiring that there is a SET event, or that 
RAMP(value, 0) performs the SET action, is all we need, that's a much 
smoother solution. We don't have to *deliberately* make hosting hard, 
even if it "only" impacts host authors.


//David Olofson - Programmer, Composer, Open Source Advocate

.- The Return of Audiality! --------------------------------.
| Free/Open Source Audio Engine for use in Games or Studio. |
| RT and off-line synth. Scripting. Sample accurate timing. |
`---------------------------> http://olofson.net/audiality -'
   --- http://olofson.net --- http://www.reologica.se ---



More information about the Linux-audio-dev mailing list