MIDI, MIDI files (.midi)
The MIDI Audio file format
The MIDI file format was developed to ease the transfer of MIDI data between applications for musicians and audio developers. Cues, volume, pitch, velocity, and other notations information are carried withing the MIDI file. These messages contained in the file help to synchronize the tempo between multiple devices. Next to enabling the user to play multiple audio channels from only one controller, MIDI files also offer ease of modification, compactness, and choice of instrument. These files are used by MIDI hardware devices as well as music playback programs.
Technical details of MIDI files
Those messages contained in the MIDI file consist of 8-bit words (bytes) which are successively transmitted at 31.25 kbaud. Up to sixteen channels, independent from one another, containing different information can be carried by one single MIDI link. They are numbered from 1 to 16. Files with the MIDI extension can carry both, channel and system messages. The former can be sent to only one of the 16 channels and can only be heard on devices that receive the channel in question. System messages can be received by all devices. Those messages can be grouped in the following types: channel mode, channel voice, system common, system exclusive, and system real-time. The Standard MIDI file format can be separated into two versions; Type 0 containing a single track, Type 1 containing multi-track data.