M.I.D.I.

Prior to 1982, every brand of synthesiser had its own type of interface and each one was different. This made it very difficult to attach different synths together without getting special (and expensive!) interface boxes made up. MIDI (Musical Instrument Digital Interface) changed all of this by creating a standard interface for all new synthesisers, drum machines, computers, FX's, tape machines, etc. etc.. Now the possibilities are virtually endless and this presents a problem for all musicians and engineers. Firstly, MIDI has a been designed so that it is simply a cable to plug between two pieces of equipment, however, once the number of MIDI equipped devices increases, the connection process can become confusing. Secondly, MIDI contains many commands, modes, and hundreds of messages, that may or may not be required for any particular application. And finally, there are hundreds of accessory boxes, switch boxes, Mappers, Mergers etc. and its important to know what they do, otherwise how can you tell if you need one! So if you can gain a basic understanding of the concepts of MIDI, the use of MIDI equipped devices becomes a little easier.


Commands.

Firstly, its important to realise that the heart of every modern (and most "old") synthesisers and other audio equipment, is a computer of one sort or another. The computer controls all of the functions of the synth; when to turn on a note, how loud the sound should be, which sound should come out etc., all of this will be discussed in detail later. The MIDI interface allows the computer another way of knowing what to do. The cable that connects two synthesisers together is simply a communication line that allows the two computers in each synth to "talk" to each other. So that each computer can understand what the other is saying, the MIDI specification has a set of commands or a language that defines what the computers can talk about.


Voice Messages.

The most basic MIDI command is NOTE ON and NOTE OFF, this enables one synth to tell another which notes it is playing. Each command has more information than just the command! Following a NOTE ON or OFF is a number indicating which note has been pressed and a second one defining how hard (or with what velocity) the note was hit. The notes are simply numbered 0 through 127 with 60 being middle C, so the MIDI keyboard extends lower and higher than a full piano keyboard! The velocity of the note varies from 1 to 127, 1 being the softest and 137 the loudest. A NOTE ON with 0 velocity represents a NOTE OFF!!

There are several other basic MIDI commands. POLYPHONIC KEY PRESSURE refers to the amount of pressure that is put on a note after the initial hit. This can control the volume, tone, timbre, vibrato etc. on an individual note. Not many synths fully support this command as putting pressure sensors on each key of the keyboard can be an expensive addition, so many manufacturers implement an alternative command called CHANNEL PRESSURE. Channel Pressure of After-Touch can also affect the volume, tone etc. of the synths sound, but the effect is over all of the notes being played not just the one you may be putting pressure on. Another way of changing the sound as you play, is with a Joystick or Pitch Wheel, consequently there is a PITCH WHEEL CHANGE command. All of these commands have one or two numbers following the command which determine how much the sound should be affected.

Another important MIDI command is PROGRAM CHANGE. This command directly extends the use of MIDI to equipment other than synthesisers, it determines which sound the synth should play. Synths and FX's units usually have a bank of sounds that can be recalled at any time. The Program Change command allows you to select the sound or Program via MIDI.

Finally, the last basic MIDI command is CONTROL CHANGE. Again this command is used by many devices, it is used to control such parameters as modulation, foot pedals, breath, pan, volume and others. This command can be used to control many different parameters that may be exclusive to certain pieces of equipment, for example delay time or depth on an effect unit, the possibilities are endless.

The next question that may come into your mind is; How can you connect several devices together and NOT get them all playing or doing the same thing? Inherent in the command is a channel number that allows the devices to know who is talking to them! For example a synthesiser set to receive on MIDI channel 4 will IGNORE and MIDI commands that are received on any other channel. There are 16 possible channels in the MIDI system. However, depending on which MODE the device is set to operate in the MIDI commands will be interpreted differently. The most common and useful mode to operate in is MODE 3.

MODE 1 - Omni On Poly

MODE 2 - Omni On Mono

MODE 3 - Omni Off Poly

MODE 4 - Omni Off Mono

One further command option in some devices is LOCAL CONTROL. The function of Local Control is to stop the synths keyboard from actually playing the synth directly. This is similar to "monitoring from tape", it allows you to ensure that the MIDI control path is correct. It is most commonly used is a sequencing set up, see later.


Sequencing.

All of the MIDI commands and messages are transmitted from the device as they happen, so the only way to record and playback the data is to read in the MIDI messages and note the `time' at which the message arrived. So now to play the data back, you start your clock again and when the appropriate time occurs send out the MIDI message you read in previously. So you read and play the messages in sequence, hence the term sequencer. To make this concept a bit clearer, a sequencer is simply an electronic version of the old PIANOLA. The notes in a pianola are represented by holes cut in a moving piece of cardboard or paper. The speed at which the song is played back is determined by the speed at which the paper moves! However, a sequencer can offer many more features than an old pianola. Once the MIDI messages have been recorded into the sequencer, the messages can be modified, moved, copied, multiplied and virtually anything else you can think of! Quantisation in a sequencer can be used to tidy up sloppy playing, by shifting the note timings to the nearest fraction of a note! Depending on how this is used (and the method the sequencer uses to do this) the results can sound very mechanical or very good! Sequencers are usually set out in a similar fashion to a multi track recorder. Different tracks can be assigned to different MIDI channels, tracks can be soloed and muted, tempos and time signatures can be varied throughout the song and most contain many, many more features. A typical MIDI system layout, with MIDI connections is shown

.Midi System


System Messages.

There are three types of system messages, SYSTEM EXCLUSIVE, SYSTEM COMMON, and SYSTEM REAL TIME. System exclusive messages are specific to particular manufacturers and allow functions not available via the standard MIDI commands. Typically they deal with data transfer/storage and parameter control. Voicing programs for synths and samplers, Librarian programs, sequencers, editors and samplers all make use of the system exclusive messages. Even though their primary use is for factory designed functions, many instrument parameters may be accessible via system exclusive messages that can not be controlled via normal voice messages. Briefly, some parameters may be Filter Cut-Off, Amplifier Gain, Envelope Parameters and many others. If you have a MIDI control device that can transmit specific system exclusive messages you can directly control these parameters. Two System common messages are Active Sensing, which allows a device to know if it is plugged into something and Tune Request which can be used for older synthesisers to tell them to tune their analog oscillators.

Other System Common and System Real Time messages are used for Timing or Synchronisation of devices. The simplest method of synchronisation is between say a sequencer and a drum machine. There are START, STOP, CONTINUE, SONG, and POSITION commands, which are used to tell the device what, where, and when to start playing. However, how can the two machines keep playing together with exactly the same timing? There is a TIMING CLOCK command which is sent continuously, while the song is playing, at a rate of 96 per bar at the tempo specified in the device. Now, this is fine for a simple two machine synchronisation but if more devices are to be synchronised or we want to synchronise to a tape machine this simple system won't work very well.


Synchronisation.

Simple synchronisation codes exist for drum machines and sequencers, however the codes can not return absolute tape position and so there is a limit to their usefulness. Frequency Shift Keying or FSK timecode (sometimes simply called "tape sync"), is an audio signal made up of two frequencies or pitches, a carrier and a modulator. The pattern of modulation is produced and read by a sequencer or drum machine to determine the start position, tempo, and stop position. The tempo is determined by the rate at which the timing signals are read from the tape, exactly corresponding to a MIDI TIMING CLOCK command. So these sync systems suffer from similar limitations to the original MIDI specification.

In current audio and video studios, it is not uncommon to have several audio and video multi-track machines, sequencers, digital recorders and a multitude of other audio equipment. It has become essential to be able to run all of this equipment together, and in fact the recorders must be able to exactly synchronise their recording and playing. In a similar way to the development of MIDI (but a long time before) the film industry decided a common method of synchronisation was required if the different types and brands of equipment were going to work together. In 1969 the Society of Motion Picture and Television Engineers (SMPTE) decided to define a standard timing reference. The idea was to allow the identification of each frame of a film or video by means of a digital code. SMPTE acts as a clock that stamps time readings on each frame of a film, video or audio tape. A single frame can then be easily located by any machine that can read SMPTE. It uses a 24 hour clock, counting from 0 to 23, 60 minutes per hour, 60 seconds per minute, and a certain number of frames per second (see below) and 80 bits per frame. There are four SMPTE standard frame rates: 24, 25, 30, and 30 drop frame. The most common SMPTE rate in the U.S. is 30 frames per second, the standard video rate (frame rate 30Hz = half the power point frequency 60Hz). In Europe and most of the rest of the world the standard rate is 25 frames per second (Phase Alternate Line or PAL and European Broadcasting Union or EBU). The motion picture frame rate is 24 frames per second, and for some reason the American National Television Standards Committee (NTSC) standard is 29.97 frames per second in which some frames are dropped every now and again to make up the difference!!!

Now that all audio and video machines are SMPTE capable and sequencers and MIDI equipment are MTC capable, it is possible to synchronise all of the studio equipment so that everything runs together! Typical synchronisation setups include:


MIDI Time Code.

To overcome the synchronisation shortcomings in the original MIDI specification, an extension to the system was added in October of 1986. MIDI TIME CODE was introduced to combine the de facto timing standard in the audio and video world SMPTE (see above) with the de facto standard in the musical equipment world MIDI. Encoding SMPTE into the MIDI system allows you to work with one timing reference throughout the entire system. For example, for an engineer to locate a particular bar and beat in a sequencer and translate that to the "real" time on the tape would require some tedious calculations (especially with differing time signatures and tempo changes throughout the song), however, with MTC the sequencer can automatically work in both Bars and Beats and in "Real" time. This system allows for an easy transition between music and song based production, and real time film and sound based production. The second part of the MIDI Time Code specification is the Set-Up command and the concept of Cue Lists. Similar to a video cue or edit list which holds the sequence of scenes to be put together, MIDI devices can be informed of events to be performed at specific times. Rather than needing to program all of the devices in the studio separately and by hand, they can all be controlled by a central "Cue List Manager" which simply informs each of the pieces of equipment what to do at particular MTC times. Making a change in the production at a later stage is as simple as typing a few changes into a word processor.


Sample Dump Standard.

Another addition to the original specification was a particular System Exclusive format. With the advent and advancements in samplers, a standard format for transmission of sample data via MIDI was added to the System Exclusive command. It allows different samplers, libraries and computers to exchange sample data in a standard way. That is, you can connect a Roland Sampler to and AKAI Sampler and exchange samples directly. This addition was also made in 1986, and so any samplers previous to 1987, or even 1988 probably would not support these formats, check the MIDI implementation chart!


Implementation Charts.

A MIDI IMPLEMENTATION CHART provides you with fast access to all the major features included in a MIDI device. Typical features are;


Different symbols, spellings and conventions may be used from chart to chart, just to make it more confusing! Some of the more common symbols you will come across are given below:

"O" and "X" are symbols used to indicate "YES" or "NO". The most common convention is to use "O" for "YES", however, just to be difficult, some use "X" for "YES". So be sure to check the bottom right corner for a key explaining the symbols used.

"OX" usually indicates that a particular function is selectable. Check the NOTES or REMARKS in case it is mentioned.

If a particular parameter is not valid, for example a SONG START on a simple synth, the area may be marked "N/A", "X", "-", or simply a blank space.

Hexadecimal values are usually indicated with the prefix "$" or "0x" or the suffix "H" or "h".

The chart is divided into various sections corresponding to the various Voice messages, System Common messages, System Real Time and System Exclusive messag4es, with a NOTES section at the end describing any special or unusual features of the device. So to determine if a synth has after touch, for example, you would find the TOUCH or CHANNEL PRESSURE parameter in the chart and check for a "YES" or "NO" symbol and also check for any special remarks.

Back. Index. Forward.


© 1998 - 2001. Information Contained Within Remains The Property Of Y.A.C.A.P.
Reproduction In Part Or In Whole Of Information, Text, Or Graphics Is Prohibited. All trademarks are copyright to their respective owners.