Often criticised for its shortcomings. MIDI is still being developed to meet musicians' needs. UK MIDI Association chief Vic Lennard brings news of the latest updates and their applications.
REGARDLESS OF ITS CRITICS, MIDI HAS OPENED NEW DOORS TO USERS OF HI-TECH MUSICAL EQUIPMENT - THE COMPATIBILITY WE ENJOY TODAY WAS INCONCEIVABLE 15 YEARS AGO. NOW THE MIDI SPECIFICATION HAS BEEN EXTENDED.
AT THE INCEPTION of MIDI in 1981, the detailed MIDI 1.0 Specification was created. This was a joint effort between the MIDI Manufacturers Association (MMA) in America and the Japanese MIDI Standards Committee. In it were covered the two main aspects of MIDI: firstly, Channel Messages for notes, MIDI controllers and MIDI modes; and secondly, System Messages which can be broken down into Real Time (like MIDI clocks and stop/start/continue commands), Common for all devices within a MIDI system and Exclusive for the transference of data between like devices and/or librarians.
Over the past nine years, there have been two major additions to the specification. The Sample Dump Standard was included for use in samplers. Prior to this, Sequential Circuits had their own method of transferring samples which was used on the Prophet 2000 and duplicated by Akai on the S900. Ensoniq used a different system on their Mirage. Happily, since the instigation of the Sample Dump Standard, most manufacturers have adhered to it.
The other addition was MIDI Time Code (MTC). This is a method for converting SMPTE code on tape to absolute time on a sequencer without the need for bars and beats. Less happily, this has not been universally accepted by software writers due to the belief of some that MTC does not have a sufficient degree of accuracy.
THE ABOVE ADDITIONS were made because it was felt that MIDI needed them. An unfortunate fact of life is that new techniques can rarely be made retrospective. A perfect example is the Prophet 2000 keyboard-based sampler and the rackmounted 2002; the former uses the Sequential proprietary sample dump while the latter uses the dump standard. The result is a total lack of communication between the two devices without using a generic sample editor on a computer to extract a sample from one and send it to the other. Yet you can connect a Prophet 2000 to an Akai S900 and directly interchange samples.
It would be useful to be able to control all front-panel operations of a MIDI device by MIDI commands. Some manufacturers have used System Exclusive messages to do this, but there is a problem. SysEx cannot be interspersed with other MIDI data except for System Real Time. For example, if you send note information while dumping the memory of your synth to computer, the dump will be aborted. Most sequencer packages will prevent SysEx from being interrupted, which leads to a further problem. A typical parameter change will take, perhaps, ten bytes which equates to 3.2 milliseconds. Your sequencer will have to stop all other MIDI transmission for this time. This makes a mockery of all the work which has been carried out to improve the resolution of sequencers, so making them closer to "real time".
MIDI controllers are used for the likes of the modulation wheel, MIDI volume, sustain pedal and so on. Generally, a MIDI controller message is only three bytes long - the same as a MIDI note message. A couple of years ago, two controllers were given the rather official name of Non-Registered Parameter Number. Controller #98 is the Most Significant Byte (MSB) while #99 is the Least Significant Byte (LSB). This allows for 128 x 128 different parameters - a total of 16,384 - which a manufacturer can define for a particular MIDI device. For example, each button on the front panel could be assigned an independent parameter number. An implementation table for Non-Registered Parameter control of an instrument might begin something like this:
|MSB (99)||LSB (98)|
|00||00||Select Utility Menu|
|00||01||Goto 1st opt|
|00||02||Goto 2nd opt|
MIDI WAS INITIALLY blessed with the ability to change between a maximum of 128 patches within a MIDI device. A typical-MIDI Program change message looks like this (in hex):
where "n" is the MIDI channel and "pp" is the required patch. Few early synths went beyond a bank of 32 sounds with the possibility of a cartridge providing another 32. But what happens when there are more than 128 possible selections?
Roland encountered this problem with their D110 where there are 255 Tones in all. To get around this problem, they used 128 Timbres, each of which accesses a Tone. Program changes then select a Timbre with its associated Tone.
Yamaha, meanwhile, use an entirely different system. On their V50, which has three banks of 100 sounds (Internal, Card and Preset) and three banks of 100 performances - 600 selections in all, SysEx is used to set up a program change table with 128 entries which can be a mixture of sounds and performances. When a program change command is received, the patch change information switch in the system setup is first checked. If this is off, program changes are ignored. There are then three modes of operation: Common - the patch change table is consulted and the relevant patch selected: Individual - as common but ignores performance changes; Direct - patch change table is ignored but program changes #119-#127 are used for switching between the different banks, after which subsequent program changes stay within that bank.
Ensoniq's SQ1 uses a similar method. It has four banks of 80 sounds (Internal, ROM, Card A, Card B) and uses program changes #124-#127 to select a bank. Again, patch changes after a bank selection stay with that particular bank. Also, patch changes #80-#99 select default drum kits from the ROM.
How about Oberheim's Matrix 1000 with ten banks of 100 sounds? This uses either MIDI controller #1 (modulation wheel) or #31 in conjunction with a program change command between nought and nine to select a bank.
This whole situation is bound to get worse with the number of multitimbral devices entering the market. Indeed, the worst part of it is that each manufacturer ends up using a different method. No sooner have you sussed out how to select all sounds on one system, than you have another synth for which you are back to square one.
Bearing all this in mind, Bank Select has been added to the MIDI spec. Bank Select uses control changes #00 and #32 to select a particular bank, and is followed by a patch change on that bank. It looks like this (again in hex):
Bn 00 vv - Bank select MSB
Bn 20 vv - Bank select LSB
Cn pp - Program change
As "vv" can take any value 0-127, there are 16,384 banks available. Apparently this is in preparation for optical technology - for once MIDI could end up ahead of the game, but with so many different systems around already this is perhaps a little like closing the barn door after the horse has bolted.
One manufacturer has already implemented Bank Select - Korg, in their new Wavestation, use it to switch between the two banks in RAM (with 50 sounds in each) and the ROM/Card banks.
MOST CURRENT SYNTHS have effects onboard - reverb, delays, chorus and the like. More often than not there are parameters for these which can be changed via MIDI. Unfortunately, most manufacturers take the SysEx avenue.
There are five effects controllers within the MIDI spec - External Effects Depth (#91), Tremolo Depth (#92), Chorus Depth (#93), Celeste Depth (#94) and Phaser Depth (#95) - but these are very rarely used. This could be because few MIDI devices use phaser, celeste and tremolo as effects.
However, in another change to the MIDI spec, these have now changed. Controllers #91-#95 are now officially Effects 1-5 and are intended to be used for control of effects depths. For other effect parameters, controllers #12 and #13 have been defined as Effect Control 1 and 2. These can be used for altering any effect parameter other than depth. For instance, MIDI controller #91 might be used for chorus depth while #12 could then be the rate of the chorus. The naming of these will be down to the manufacturers but will continue to be known by their old names as default.
WE ARE NOW nearly ten years down the line from the arrival of MIDI. Most of us accept the MIDI cable as being part and parcel of a synth, and patch the MIDI side of a system as easily as the audio side. We play chords and hear them as chords, in spite of the serial nature of MIDI. Perhaps we are guilty of complacency - after all, wasn't this the intention of MIDI?
Perhaps we should occasionally peer back into the past to the days of Control Voltages (CV) and Gates: pressing a note on a monophonic synth and having it play back another device at the same time was looked on with awe. The fact that it was probably out of tune, late, only sounded for a set period of time and was always at the same volume, was ignored. The same system with polyphonic synths was intended for those whose vocation in life should have been that of telephone operator. But stand back in amazement we did.
Viewed against this background, MIDI is a success story. One cable for 16 channels of voices with a 128-note range and 128 degrees of velocity sensitivity is impressive by any modern musical standard. MIDI has its failings, but then so do most other aspects of life.
Vic Lennard is the founder and director of the UK MIDI Association. Membership of the UKMA is open to individual musicians (£34.50 per annum) as well as manufacturers and publications concerned with MIDI. More information and details of membership are available from: UKMA, (Contact Details).
Feature by Vic Lennard
mu:zines is the result of thousands of hours of effort, and will require many thousands more going forward to reach our goals of getting all this content online.
If you value this resource, you can support this project - it really helps!