Shouldn’t line 134 in MidiFile.cpp read
return time / (-(timeFormat >> 8) * (timeFormat & 0xff));
instead of
return time / (((timeFormat & 0x7fff) >> 8) * (timeFormat & 0xff));
?
I have a midi file w time format 0xe728 meaning 25 frames of 40 ms i.e. a time stamp of 1s is stored as 1000 (ms).
I would expect the time stamp to be converted back to 1s, which it doesn’t w the current code. Or am I missing something?