So it seems the only substantive member function is MidiOutput::sendMessageNow() (its the building block of all output).
Where’s the clock, the real time thread, or the device specific buffer that ensures messages are played at exactly a certain point in the future? Is it just me or is there some stuff missing?
Doesn’t MidiOutput::sendBlockOfMessages() do that?
Doesn’t MidiOutput::sendBlockOfMessages() do that?[/quote]
Well, it tries to…but in the implementation of MidiOutput::run() we have:
wait ((int) timeToWait)
This doesn’t look particularly robust. And how do you sync to a MIDI clock? Where’s the real-time thread?
Yeah those features definitely seem quite useful for hosts, it’d be nice if Juce had them.
Though since it seems like plugins developers (using Juce) outnumber host developers 100 to 1, I doubt they are a high priority.