Is convertTicksToSeconds() correct?


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?


Hmm… Yes, you do seem to be right about that, thanks!