The birth of MIDI brought a great deal of interconnectivity to
the electronic-music world, but within a few years, desktop
musicians, multimedia producers, and game developers began
clamoring for some level of playback predictability during the
exchange of Standard MIDI Files (SMFs). Understandably, composers
and arrangers wanted to ensure that piano parts would be played
with piano patches and drums wouldn't sound like violins.
The MIDI Manufacturers Association (MMA) responded by
introducing the General MIDI (GM) standard in 1991. General MIDI 1
(or GM1) established a common set of musical criteria for
synthesizers and sound modules. The standard was well suited to
producing soundtracks for games, distributing MIDI library music,
as well as swapping sequences with friends and collaborators.
It wasn't long, however, before musicians and developers
demanded more GM instruments with greater control over the
instrument sounds. Roland introduced its GS extension to the GM
standard, with more patches, more notes in the drum map, and
additional elements such as chorus and reverb. Yamaha developed its
own XG extension with even more patches and parameters.
In an effort to update the aging GM1 standard, the MMA released
General MIDI 2 (GM2) in late 1999. GM2 expands not only the
instrument set and drum map but also the number of controller
messages a device can implement. To be GM2 compliant, a synth must
feature 32-note polyphony, offer a wider range of instrument
sounds, include basic effects, and support a number of new
In the February 2001 issue, EM examined the crop of GM
sound modules; here are some ways to creatively use GM2's newfound
Musicians have long struggled to live within GM1's 24-note
polyphony limit, and though the eight additional notes GM2 provides
may not seem like much when many instruments boast 128-note
polyphony, every little bit helps. Those eight notes can let you
use a layered sound that you might have otherwise avoided or add a
countermelody that you might have left out.
The new sounds are generally variations of GM1 sounds —
for example “wide” and “dark” variations on
program 1, Acoustic Grand Piano. In fact, the number of pianos has
tripled to include nine acoustic and nine electric pianos. A
variety of guitars, basses, string ensembles, and brass patches
have also been added. To maintain backward compatibility with GM1
modules, the first sound bank contains the original 128 programs.
The new sounds are located in other banks. Anyone familiar with
Roland's GS patches will feel at home with the GM2 sound set. (For
a closer look, see the sidebar “New Sounds in
GM2 devices must include chorus and reverb, which help SMFs
sound more polished. Whereas the quality and character of those
effects still varies considerably from one device to another, the
MMA went so far as to define room size and reverb time, along with
specific chorus settings to minimize the variations.
Some of the most interesting developments, though, have to do
with the additional control parameters. Some were added to the MIDI
language specifically for GM2 purposes.
GM2's introduction of Key-Based Instrument Controllers is a
major step forward in drum programming. Key-based refers
to how percussion is mapped, with each MIDI note number triggering
a different timbre, such as kick drum on C2 and snare on E2. GM2
lets you map certain controllers to correspond to individual keys
and therefore individual drum sounds. That enables composers to do
things such as override the default pan positions of drum kit
elements. The hi-hat, for example, can be panned all the way to the
right instead of centered. Other controllers that can be adjusted
per note number include Volume, Reverb Send Level, and Chorus Send
It is a common practice for composers to split drum timbres onto
different tracks to make it easier to control the balance among the
different sounds. For example, because Volume has always been a
channel-specific parameter, you couldn't change a snare sound's
Volume without affecting the hi-hat. However, if you record them on
different tracks (both assigned to channel 10), you can easily
change their relative levels by adding a Velocity offset to one
Key-Based Instrument Controllers lets you specify the Volume of
note number 42 (the hi-hat) independently of the Volume of note
number 38 (the snare) using a new Universal Real Time System
Exclusive message. The message starts with a header similar to a
standard System Exclusive (SysEx) message and then uses a pair of
sub-IDs to identify it as a Key-Based Controller message. Next, you
define the channel (10 or 11), key (42), controller number (7), and
that controller's new value. While you're at it, you can also
define new Pan, Chorus, and Reverb messages for the hi-hat within
the same message.
For that righteous '80s sound, use a key-based Reverb Send Level
controller to dial in a bunch of reverb on the snare while keeping
the kick drum nice and dry. Add some sparkle to a triangle by
increasing its Chorus Send Level without messing up the rest of the
kit. (For a closer look at the new GM2 drum sounds, see the sidebar
“GM2 Percussion Set.”)
Another percussion improvement in GM2 is making channel 11
available as a second Rhythm channel. So much of the music of the
last ten years depends on the sound of multiple layered drum kits,
yet until now you couldn't even mix and match an Electronic kit
hi-hat with Power kit tom-toms, much less stack different kits
Having two channels for drums means you can change different
channel-specific parameters, such as Volume and Pan, on different
instruments. By moving a shaker or tambourine to channel 11 while
keeping the rest of the drums on channel 10, you can create some
movement by sweeping the shaker around the stereo field using good
old controller 10 (Pan).
The Key-Based Instrument Controllers also address some of the
benefits of a second Rhythm channel, but they're designed for
slightly different purposes. Whereas Key-Based Instrument
Controllers are good for rebalancing percussion instruments and for
also rearranging the drum kit in the stereo field, their data
structure makes them more useful for set-it-and-forget-it use.
Using channel 11 for more dynamic effects is easier and eats up
less data bandwidth. (Channels 10 and 11 can also be employed as
Melody channels for nonpercussion parts; selection is made using a
Bank Select message.)
All GM2 devices have a function called the Controller
Destination Setting that allows you to assign any combination of
six specified parameters to a controller. The setting overrides any
default controller assignment. The six parameters are Pitch, Filter
Cutoff, Amplitude, LFO Pitch Depth, LFO Filter Depth, and LFO
Amplitude Depth. (See the sidebar “Under Control.”)
Say you want your Lead patch to slide up a half step and wah
every time you lean into the keys. If you're brave enough to write
a few SysEx lines, you have it nailed.
The Controller Destination Setting syntax starts with the
Universal Real Time SysEx header (F0H 7FH), followed by the device
ID. That in turn is followed by two sub-ID numbers. The first is
09, the ID for Controller Destination Setting, and the second is
01H for Channel Pressure or 03H for Control Change (CC). The next
byte specifies the channel for which you are implementing the
assignment. Remember that channels are one of the few things in
MIDI that are commonly numbered from one instead of zero, so if you
mean channel 5, enter a 04H value. If you are assigning a
controller, the next byte is the number of that controller, but for
the purpose of our Aftertouch example, you can skip that step.
The next two bytes are for the destination parameter and the
range of the parameter's variation. You can map more than one
parameter by repeating the destination/range sequence for each
additional parameter. In that case, you assign Pitch Control to
Channel Pressure with the message 00H and set a 1-semitone range
with the message 41H. Follow that with a 01 value to add filter
cutoff control to the equation, and set a range of +4,800 cents
(four octaves) with a 60H value. Naturally, a bit of
experimentation is necessary to determine the range required to
produce your wah effect.
The entire message ends with the customary End of Exclusive
message, F7H. Once that is done, your lead sound will exhibit the
desired bend/wah effect until you assign a different controller
destination. You can use the same process to assign a
general-purpose controller to filter cutoff, letting you include a
filter sweep's classic sound in your GM2 sequence.
Several of GM2's more interesting features are, unfortunately,
only recommendations, not requirements. From a practical
perspective, that means a GM2 synth might not respond to the
messages. In the hope that manufacturers will recognize that those
features are too cool to ignore, here's a look at some of them.
Filter resonance, which is an emphasis of frequencies
near the filter cutoff frequency, adds a certain edge to the sound.
CC 71 is defined in the GM2 specification as controlling the
resonance degree. When combined with CC 74, Brightness (which
controls the filter cutoff) provides plenty of sound-shaping power.
Whereas the filter's exact behavior is left to the manufacturer, CC
71 provides a relative change in the resonance effect, increasing
the strength of the resonance with values higher than 64 and
decreasing the resonance's strength with values lower than 64.
Brightness is also a relative control.
One of the biggest shortcomings of GM acoustic-instrument
patches (or almost any synthesizer's acoustic emulations, for that
matter) is the one-size-fits-all way the notes start and stop. Wind
and string players devote their entire lives to articulating notes
in precise yet constantly varying ways, but a synthesized trumpet
or violin note always starts and stops in a manner defined by a
Fortunately, CCs 73, 75, and 72 have come to the rescue. They're
recommended by the GM2 specification for controlling attack time,
decay time, and release time, respectively — three of the
four parameters that make up a typical ADSR envelope. Any GM2
synthesizer that implements those CCs lets you create more
realistic acoustic sounds.
For example, the distinction between GM programs 49 and 50, the
two String Ensembles, has always been that String Ensemble 2 has a
slower attack and release than String Ensemble 1. The envelope
controllers let you fill in the gaps between those two extremes. By
assigning CC 73 to a data wheel or slider on your controller
keyboard, you can coax hard or soft attacks (or any degree in
between) from a string program without changing patches.
Decay is the envelope's second stage, and a rapid decay (short
decay time) makes a note sound more accented. Release time is the
length of time from the Note Off message to the actual end of the
tone. Plucked strings have a long release time, and staccato
brasses have a short release time. All three envelope controllers
make relative adjustments to the program's default envelope
parameters, with a value of 64 corresponding to the default.
That is a perfect application for a keyboard with multiple data
sliders, such as the Kurzweil K2500, with its eight assignable
faders. With each envelope controller assigned to a different
fader, even a keyboard-challenged klutz could play more convincing
Now that Yamaha and Roland have agreed to support GM2 and are
encouraging others to do so, it's a good bet that compliant devices
will be widely available soon. When that happens, you'll be able to
write GM2 sequences and be assured that they'll sound reasonably
consistent, no matter who plays them back.
Given the enormous number of GM1 devices, however, you might not
want to lean on the new features too much. In particular,
filter-based effects could come out sounding like static drones on
non-GM2 devices. For maximum GM1 compatibility, you might also want
to avoid using channel 11 for drums.
Fortunately, the new instrument sounds are in different banks
and feature the same program numbers as the sounds they most
resemble. Because most GM1 devices simply ignore bank changes, the
new sounds play back like their GM1 siblings. In most instances,
the results should not be catastrophic.
The GM specification has been enormously successful in bringing
compatibility to SMFs. GM2 will prove irresistible to composers and
manufacturers for its expanded sound palette and its new
sound-shaping tools. In time, people will get greedy again and
insist on GM3 or some GS/XG/GM hybrid, but until then there are
lots of cool new options to keep everyone busy.
Brian Smithers is associate course director of MIDI at Full
Sail Real World Education. You can reach him through his Web site
NEW SOUNDS IN GM2
With 87 new instrument timbres to play with, the GM2 sound set
offers plenty to like. The piano family has 16 new sounds, most of
which are in the electric-piano department. Electric Pianos 1 and 2
each feature a detuned variation and a Velocity mix version; other
variations have such names as '60s Electric Piano, EP Legend, and
EP Phase. Remember that the specific timbres aren't defined
precisely and the sound quality varies greatly according to the
price of the synth or sound module. Still, having nine instead of
two electric pianos to choose from is bound to make it easier to
find the sound you seek.
Chromatic Percussion now includes wide versions of Marimba,
Vibraphone, Church Bells, and Carillon. The Organ family has more
than doubled, with most of the additions in the Drawbar and
Percussive designations. New 12-String and Pedal Steel variations
contribute to a tripling of Guitar sounds. The expanded guitar
family also includes a Velocity-switched muted Electric Distorted
Rhythm Guitar, two new feedback variations, and more.
Most new Bass sounds are of the synth-bass variety, including
Warm, Resonance, Attack, Rubber, and Clavi types. Strings are
almost the same, with only a slow attack violin and Yang Chin added
to spice things up, whereas Ensemble sounds are treated more
generously. That category adds a patch called Strings and Brass,
another called '60s Strings, and a third called Synth Strings. A
second Choir Aahs, Humming, and three new Orchestra Hits complete
the Ensemble family.
As a multiple-woodwind player, I don't know whether I am
relieved or insulted that the Reed and Pipe families are untouched.
The Brass family, however, has 11 new sounds, from solo timbres to
section sounds and several new synth-brass patches.
Six of the eight new Synth Lead timbres are Lead 1 or 2
variations, including Sine, Sawtooth, Saw + Pulse, and Double
Sawtooth sounds. The Synth Pad, Synth SFX, Ethnic Miscellaneous,
and Percussive families share 12 new sounds among them, from a
Sitar variation to Castanets and Rhythm Box Tom. Although the
paucity of new timbres in those categories might disappoint some,
the new sound set's focus is clearly on the meat-and-potatoes
sounds that are used the most in contemporary music.
GM2 PERCUSSION SET
So many GM synths have followed the GS/XG example of providing
alternate drum kits through program changes that it's easy to
forget GM1 specified only one drum kit. Now GM2 canonizes the
multiple-kit practice by requiring nine drum kits. With the
exception of the SFX Set, they have more similarities than
differences, with as few as two notes (both kick drums) separating
the Jazz Set from the Standard Set.
The Room Set, for example, offers more resonant toms, and the
Power Set replaces the standard toms, kicks, and snares with fat,
punchy, reverb-heavy '80s sounds. Two Electronic Sets are included,
one of which is called the Analog Set, suggesting sounds modeled
after the timbres of the Roland TR-808. Both sets replace the
standard toms, kick, and snare with familiar synth versions, and
the Analog Set adds cheesy hi-hats and some hand percussion. The
Brush Set features the Jazz kick drums and the sounds of brushes
tapping, slapping, and swirling on a snare. The Concert Set
includes a full octave of timpani, and the SFX Set replaces most
Standard timbres with such essential ingredients as laughter,
applause, dog bark, and bubble.
The drum map grew as well, adding seven new notes above and
eight new notes below the GM1 map. Additional timbres include
shaker, muted and open surdo, metronome click, and scratch push and
pull. Although each sound should appeal to somebody, one glaring
hole in the drum map wasn't plugged this time around. Ignoring XG's
shining example, GM2 fails to provide a snare roll, one of the most
useful sounds and also one of the most difficult to fake. Oh well,
maybe next time.
Controller Destination Setting is one of several new functions
added to the MIDI 1.0 specification for inclusion in General MIDI
2. It lets you assign any of six controllers to Channel Pressure or
a CC. The assignment is made as a Universal Real Time SysEx message