The MIDI protocol consists of MIDI events that carry four types of messages: 1) voice messages; 2) system common messages; 3) system realtime messages; and 4) meta messages.
While MIDI voice messages are specific to a MIDI channel, system common and system realtime messages are not specific to a channel and thus all MIDI devices on the MIDI system should respond to such messages. Thus, these messages are "system" messages. Some of these system messages provide require response in real time and are called "system realtime" messages. The rest are "system common messages".
MIDI system realtime messages are messages that are not specific to a MIDI channel but prompt all devices on the MIDI system to respond and to do so in real time.
The following messages are MIDI system realtime messages.
|Message ||MIDI device action|
|MIDI clock ||Understand the position of the MIDI clock when synchronized to another device|
|Start ||Start playback of the current MIDI sequence|
|Continue ||Resume playback of the current MIDI sequence|
|Stop ||Stop playback of the current MIDI sequence|
|Active sense ||Understand that a MIDI connection exists (when there are no other MIDI messages)|
|Reset ||Reset to default state|
A MIDI system realtime message – usually the MIDI clock message – can be placed in the middle of another message without affecting this other message or changing the MIDI running status. The realtime message can be recognized and handled appropriately, because its status byte has a topmost bit equal to 1, whereas the bytes of MIDI message data after the status byte have topmost bytes equal to 0, and because the length of system realtime messages is known.
Musical Instrument Digital Interface (MIDI)