[gmpi] Re: Reqs 3.9. Time - opening arguments.1

  • From: "Koen Tanghe" <koen@xxxxxxxxxxxxxxxxxxx>
  • To: <gmpi@xxxxxxxxxxxxx>
  • Date: Tue, 10 Feb 2004 23:02:10 +0100

On Tuesday, February 10, 2004 9:51 PM [GMT+1=CET],
Ron Kuper <xxxRonKuper@xxxxxxxxxxxxxxx> wrote:

> ReWire's tempo model is somewhat similar to VST.   A ReWire device
> (synth) is given a struct when it's time for the synth to produce
> sound. This struct contains among other things, a tick start time, a
> sample size for the buffer, and the tempo in effect for the buffer.
> As in VST, tempo changes sent to a Rewire synth are limited to the
> buffer size granularity.

Maybe we need to specify something about this granularity for tempo in the
requirements too. Is buffer size granularity for tempo enough (one value for
a whole buffer)?

Personally, I would prefer to see tempo specified as a list of timestamped
"tempo events" for that buffer (the way MIDI events are in dealt with in
VST). The plugin can then perform sample accurate event handling for that

However, in VST world, I have seen the following behavior when a softsynth
is being played *live*: when an event occurs in the middle of a block, some
hosts will ignore the timestamps and just put the events all at the start of
the next block (with an offset of 0). This way, the events will seem to have
occurred at the first sample of the block, and will be dealt with
immediately (the as-soon-as-possible approach) -> of course this introduces
jitter, because the time between the occurrence of the event and the moment
it is handled (generating the sound samples) will be different each time,
depending on where in the block the event occurred: jitter varies between 0
and the block size.
Many people argue that it is better to always acknowledge the timestamps
(also in live situations) which always introduces a latency of 1 block.
Musicians tend to perform better when they have fixed latency rather than
varying latency (well, jitter).

Should we also specify something about this in the requirements for tempo


And later also for other events, and the setting of parameters, but I
believe that in that case, we already decided about sample-accurate timing,

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: