midi-parser-js icon indicating copy to clipboard operation
midi-parser-js copied to clipboard

default sysex parser correct?

Open masi opened this issue 5 years ago • 1 comments

If I understand the sysex message format its lead-in is 0xF0 followed by an arbitrary number of bytes ending in a final 0xF7. Bit 8 may never be set in the payload, which means they have to be less than 128.

Your code simply reads a single byte and then goes on.

Anyway, thanx for the code. I'm into TypeScript, but the project is a great starting point for me.

masi avatar May 03 '20 14:05 masi

Sorry, I confused the format of the stored format (file) with the one of the transmitted format (cable).

But I think the code would be safer if it would either treat the sysex as an array of numbers or skipped to payload using movePosition(). Sysex messages can be quite long. Eg

F0 0D 00 20 6B 7F 42 25 00 65 16 01 sn nn mn F7

This sets the MIDI note "mn" of the step "sn" for the sequence "sn" of an Arturia Keystep.

masi avatar May 03 '20 14:05 masi