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

  • From: "Jeff McClintock" <jeffmcc@xxxxxxxxxx>
  • To: <gmpi@xxxxxxxxxxxxx>
  • Date: Sat, 7 Feb 2004 15:35:53 +1300

> stream tempo
> =============
> ... I imagine this
> stream tempo being alot like current realtime sync via midi clocks or
> ReWire. Since most hosts can handle that kind of sync these days, I'm not
> sure why it would be too difficult to add support for it from a plug.
> Could someone elaborate?

Hi Michael,

Latency. Before a plugin processes a block, all it's events must be qued up,
that includes tempo changes.

 Plugins are processed in order 'upstream' to 'downstream'.

[A]->[B]->[C]

  If plug B changes the tempo, there are two ways the host can handle it :

-  Host can change the tempo map immediatly, in which case C receives the
new tempo, but A will have already used the old tempo.

or

- Host can propogate the tempo during the next 'block', all plugins receive
consistant tempo info.

Neither case is ideal.  Either A and C see different tempo changes during
the same song, or all tempo changes are lagged by the graph latency.

A clever plugin, aware of the graph latency, could probly sync the host
successfully to incoming audio, but it's not straightforward.

Best Regards,
Jeff




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