Musical Instrument Digital Interface, or MIDI, is the name given to a system designed to allow electronic musical instruments to communicate. MIDI allows computers, synthesizers, sound-cards and drum machines to control one another, and to exchange system information. Though modern computer sound-cards are MIDI-compatible and capable of creating realistic instrument sounds, the fact that sound cards' MIDI synthesizers have historically produced sounds of cheesy quality has tarnished the image of a general purpose computer as a MIDI instrument.
MIDI is almost directly responsible for bringing an end to the "wall of synthesizers" phenomenon in 1970s-80s rock music concerts. Following the advent of MIDI, many synthesizers were released in rack-mount versions, enabling performers to control multiple instruments from a single keyboard. Another important effect of MIDI has been the development of hardware and computer-based sequencers, which can be used to record, edit and play back performances. Sychronisation of MIDI sequences is made possible by the use of MIDI Timecode.
The MIDI standard consists of a messaging protocol designed for use with musical instruments, as well as a physical interface standard. A physical MIDI connection consists of a one-way (half-duplex) serial current-loop connection running at 31,250 bits-per-second. Only one end of the loop is referenced to ground, with the other end 'floating', to prevent ground loops from producing analog audio interference and hum.
Each connection can transmit standard musical messages, such as note-on, note-off, volume, pitch-bend and modulation signals coded with 16 "channel" identifiers. The ability to multiplex 16 "channels" onto a single wire makes it possible to control several instruments at once using a single MIDI connection.
Most MIDI-capable instruments feature a "MIDI In", "MIDI Out" and occasionally a "MIDI Thru" connection in the form of 5-pin DIN jacks. In order to build a two-way physical connection between two devices, a pair of cables must be used. The "MIDI Thru" jack simply echoes the signal entering the device at "MIDI In" (with a delay of a few milliseconds), making it possible to control several devices from a single source. Although most PC soundcards have the ability to terminate a MIDI connection (usually through a convertor on the joysick port) the Atari ST was the first Home computer to sport the original 5 pin format which made it a very popular platform for running MIDI sequencer software.
MIDI messages are extremely compact, due to the low bandwidth of the connection. Most messages consists of a byte containing a channel number and an opcode, followed by one or two data bytes. This information can be collected and stored on a computer disk (along with timing information), where it is called a MIDI File. Large collections of MIDI files can be found on the web; however, the limited number of instrument types in the General MIDI standard and the historically poor synthesis of what instruments were there have led some listeners and composers to claim that "MIDI sucks" and use MOD files instead.
The MIDI Association has now defined a new format, XMF (eXtensible Music File) which packages SMF (Standard MIDI File) format data with downloadable sounds, to much the same effect as MOD files. In spite of its name, XMF is not XML-based.
Although traditional MIDI connections work well for most purposes, in 1994 a new high-bandwidth standard, named ZIPI, was proposed to replace MIDI for professional purposes. ZIPI failed due primarily to lack of demand.
USB and Firewire embeddings of MIDI are now entering the market, and in the long run USB MIDI is likely to replace the old current loop implementation of MIDI, as well as providing the high-bandwidth channel that ZIPI was intended to provide.