<< Chapter < Page | Chapter >> Page > |
A MIDI message conveys information between MIDI-capable equipment. For example, a message could indicate that a note should begin sounding, or that a specific type of sound be selected, or that the position of a pitch-bender control has just changed. MIDI messages are typically three bytes long: a status byte followed by two data bytes . Status and data bytes are distinguished by the value of the MSB (most-significant bit); the MSB is set to a“1”for status bytes, and is cleared to a“0”for data bytes.
When the MIDI standard was developed in 1983, MIDI messages were designed for compatibility with serial communications through UART s (universal asynchronous receiver-transmitters), the digital device“hiding”between the COM port on a desktop computer. In this way standard computer equipment could be interconnected to musical equipment including synthesizers, keyboards, sound modules, and drum machines.
The original MIDI electrical interconnection was designed for compatibility with standard audio cables terminated with DIN-5 connectors. Look at the back of a typical synthesizer, and you will see three connectors that look like this:
The electrical connection is unidirectional. The MIDI IN connector accepts a signal transmitted from the MIDI OUT connector of another device. Many different devices can be cabled together in a daisy chain , like this:
Since it is not always desirable to have every single device process and re-transmit received MIDI messages, the MIDI THRU connector offers an electrically-identical version of the signal received on the MIDI IN connector. For example, the sound module and drum machine do not generate MIDI messages, so they can simply pass through the signals. However, the keyboard generates messages, so the MIDI OUT connector must be used.
MIDI messages associated with the actual musical performance -- note on, note off, voice selection, and controller status–use the concept of a channel. For example, suppose that one synthesizer has been configured to associate“Channel 3”with the sound of a cello, and another synthesizer has been configured to associate“Channel 7”with the sound of a flute. When both of these interconnected synthesizers receive a“note on”message for Channel 3, only the first synthesizer will begin to sound a cello; the second synthesizer will ignore the message. In this way, many different devices can be interconnected, and configured to respond individually according to the channel number.
The MIDI standard for electrical interconnection specifies a fixed bit rate of 31.25 kbits/second. In the days of 8-MHz personal computers, 31.25 kbaud was considered quite fast. The rate is adequate to communicate performance information between several interconnected devices without noticeable delay, or latency . Today, however, MIDI messages are more often conveyed through USB . MIDI-to-USB converter boxes are available for older synthesizers that do not support USB directly.
Notification Switch
Would you like to follow the 'Musical signal processing with labview (all modules)' conversation and receive update notifications?