Yes - as long as the song position doesn't skip,
because that won't
(*) result in tempo events. Plugins that *lock* (rather than just
sync) must also be informed of any discontinuities in the timeline,
such as skips or loops.
OK, it took me a bit to grok this. We have four temporal concerns:
1) plugins that need to do things in step with the tempo
- they have a TEMPO control
2) plugins that need to do things on tempo milestones
- they have a TEMPO and can host callback for music-time
3) plugins that need to do things at some point in absolute time
- they have the sample rate, no worries
4) plugins that need to do things at some point in song time
- they have a TRANSPORT control
(*) You *really* don't want two events with the
same timestamp,
where the first says "tempo=-Inf" and the other says
"tempo=120 BPM". But that would be the closest to the correct
ick...
Tempo changes
Whenever the tempo changes, you get a sample
accurate event with the new tempo.
Unit: Ticks/sample
Before I go any further: What's a tick?
Meter changes
When PPQN (who would change *that* in the middle
Define PPQN in our terms? Pulses of...
Then I can digest the rest of this email :)