Kevin,
Are you using PortMidi or using the Win32 Multimedia API for midi
sysex messages? PortMidi has a lock in the data input callback to
prevent reentrance (although it's amazing that Windows would allow this
to happen, and that alone suggests that maybe this is a bug in Windows).
I could imagine that if Windows allows multiple threads to call
PortMidi's winmm_in_callback() concurrently that the calls could get
reordered and scramble sysex data (similar to the problem you describe)
in spite of the lock. If that's the case, my next question would be how
does one write a correct input handler? There could also be a bug at the
USB driver level -- writing and testing device drivers for
multiprocessors in Windows is hard.
-Roger
_______________________________________________
media_api mailing list
[email protected]
http://www.create.ucsb.edu/mailman/listinfo/media_api