On Fri, 2010-01-22 at 16:37 -0500, Tim E. Real wrote:
So my idea was to 'direct drive' (increment)
the midi engine's
tick counter by the incoming sync messages.
Drift between master and slave has been essentially eliminated.
Response is instantaneous.
Keep that! but ..
The only slight drawback is the resolution.
I've abandoned any notion of using a tempo or tempo map,
or to obtain sub-tick (frame) resolution, during external sync.
What you can do is guess that the next tick will come approximately at
the same interval as the previous, divide that interval by four to get a
useable resolution. If a tick comes early, dump whatever notes are left
to be played up to that point. Somebody is fooling around with
variospeed fx, and there is no consistent beat or 'feel' anyway.
At standard 24 ticks per quarter note, resolution is
1/3 of a
64th note. Not too shabby, acceptable for music.
Ok for written music or if you have a tempo of 280 bpm, else not!
Now I'm thinking, this is probably how sync was
designed to be used,
considering simple old 80's hardware - (what clock filtering?).
The very first ones (like the MSQ 700 I have on display here on my DX7),
but not later ones. Roland also made a gadget you could tap, and it
would create a 24 pulse/q-note sync out of that. It could be set to
average over 2, 3 or 4 'taps' (or kicks on the bass drum, or ..)
Rock solid and stable, even when going absolutely
nuts
with the tempo knob! No noticeable resolution effects.
If you say so ...
/jma