ok, so just to help someone else out:
in your constructor/class def:
double startTime = Time::getMillisecondCounterHiRes();
msPerTick = (60000.f / tempo) / 960.f; //960 ticks per quarternote
in your handleIncomingMidiMessage():
double timeStampInMS = Time::getMillisecondCounterHiRes() - startTime;
m.setTimeStamp(timeStampInMS / msPerTick);
in your MidiMessageSequence populator:
int microsecondsPerQuarter = (60000.f / tempo) * 1000.f;
MidiMessage tempoEvent = MidiMessage::tempoMetaEvent(microsecondsPerQuarter);
tempoEvent.setTimeStamp( 0 );
MidiMessageSequence mms;
mms.addEvent(tempoEvent);
in your midiFile generator:
midiFile.setTicksPerQuarterNote(960);
midiFile.addTrack(mms);
