I\'m trying to write a MIDI parser, but I\'m reaching a MIDI event that isn\'t documented in the official documentation (namely http://www.midi.org/techspecs/midimessages.ph
81 70 90 3c 00 00 43 1e
81 70
: delta time (240 ticks)
90 3c 00
: Note-On message (actually note off)
00
: delta time
43 1e
: Note-On message, using running status.
The MIDI Specification says:
RUNNING STATUS
For Voice and Mode messages only. When a Status byte is received and processed, the receiver will remain in that status until a different Status byte is received. Therefore, if the same Status byte would be repeated, it can optionally be omitted so that only the Data bytes need to be sent. Thus, with Running Status, a complete message can consist of only Data bytes.
Running Status is especially helpful when sending long strings of Note On/Off messages, where "Note On with Velocity of 0" is used for Note Off.
Status bytes always have the most significant bit set (80–FF), while Data bytes always have it clear (00–7F). Therefore, it is always possible to distinguish between them.