Martijn Sipkema wrote: >> This >> would not help make things simpler. It would also mean that a Sysex >> or pitch/CC burst routed through can delay MIDI clocks because of the >> limited bandwidth on the MIDI wire. > >Sysex can hurt timing for other events, but that's MIDI. MIDI clock (any >MIDI realtime message) can interleave other messages. And yes, merging >MIDI streams is not easy.
The merging itself is not so hard I think. It becomes real hard when 'immediate' writing has already written too many bytes to the card (or driver) fifo. >> Thinking about it -- it's hypothetical because we don't have them in >> Linux yet -- I believe a decent MIDI out handler using a firm timer >> would be an order of magnitude more complicated than one based on the >> RTC. Have you coded one yet? > >Yes, and it is not that complex I think. Note that this would only have to >be done >in a driver process or a user-space sequencer application and not for every >client >application. > >I'll try to get a version of my MIDI I/O API/framework ready, but it will >probably still >take me some time to get finished. I see. If you're designing it on the premise that we have firm timers in Linux, it's certainly going to take some time. ;) Sorry, couldn't resist. Good luck with it. tim