[gmpi] Re: Reqs 3.8 Events - ramped events

  • From: Steve Harris <S.W.Harris@xxxxxxxxxxxxxxx>
  • To: gmpi@xxxxxxxxxxxxx
  • Date: Wed, 7 Jan 2004 11:54:49 +0000

On Wed, Jan 07, 2004 at 12:23:09 +0100, David Olofson wrote:
> BTW, some advantages with <target, duration> events:
> 
>       * If a host wants to implement click-free
>         disconnection of control inputs, it can just
>         send <default_value, declick_ramp_time>,
>         eventually followed by <default_value, 0>.
>         This will ramp from the current value to
>         the default value. The host does not have
>         to know the value at the time of
>         disconnection to do this.

That assumes that the default values cause no click on disconnection - I
dont think thats likly to be true, it would be easier/better to just
xfade to passthrough with latency correction.
 
>       * Quick'n'dirty merging of two event streams
>         generates a (sort of) sensible signal, since
>         ramps are always from the current value.
>         That is, no sawtooth curves, overshooting
>         or other nasty stuff.

I dont see how that will work. Folling evnets will just clobber the
proceedings ones causing random wanderings in the value. In reality the
host will still have to handle (or prevent) merges.
 
>       * The duration parameter gives the control
>         input a hint about the duration of the ramp,
>         so it can hit the target value even if the
>         internal ramping isn't perfectly linear.
>         Useful when control->coefficient transforms
>         are expensive and ramping is done on the
>         coefficient level.

True. Though this can be done equally well by multiplying delta by the
krate.

Some disadvantages:

* Plugin will just do delta = target/duration 99% of the time anyway.

* Special case handling for duration = 0 (branch).

* Plugin has to store what the next value will be (and at what time) if it
  wants to ignore ramps, or we need two seperate representations.

- Steve

----------------------------------------------------------------------
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

Other related posts: