259 lines
12 KiB
Plaintext
259 lines
12 KiB
Plaintext
Date: Tue, 14 Jan 92 23:01:16 EST
|
|
From: jeff@millie.loc.gov (Jeff Mallory)
|
|
Subject: General MIDI Level Spec
|
|
|
|
|
|
**** Brief Overview of Proposed General MIDI Level 1 Spec ****
|
|
|
|
The heart of General MIDI (GM) is the _Instrument Patch Map_, shown in
|
|
Table 1 (see below). This is a list of 128 sounds, with corresponding
|
|
MIDI program numbers. Most of these are imitative sounds, though the
|
|
list includes synth sounds, ethnic instruments and a handful of sound
|
|
effects.
|
|
The sounds fall roughtly into sixteen families of eight variations
|
|
each. Grouping sounds makes it easy to re-orchestrate a piece using
|
|
similar sounds. The Instrument Map isn't the final word on musical
|
|
instruments of the world, but it's pretty complete
|
|
General MIDI also includes a _Percusssion Key Map_, show in Table 2
|
|
(see below). This mapping derives from the Roland/Sequential mapping
|
|
used on early drum machines. As with the Instrument Map, it doesn't
|
|
cover every percussive instrument in the world, but it's more than
|
|
adequate as a basic set.
|
|
To avoid concerns with channels, GM restricts percussion to MIDI
|
|
Channel 10. Theoretically, the lower nine channels are for the
|
|
instruments, but the GM spec states that a sound module must respond
|
|
to all sixteen MIDI channels, with dynamic voice allocation and a
|
|
minimum of 24 voices.
|
|
General MIDI doesn't mention sound quality of synthesis methods.
|
|
Discussions are under way on standardizing sound parameters such as
|
|
playable range and envelope times. This will ensure that an arrangement
|
|
that relies on phrsing and balance can play back on a variety of
|
|
modules.
|
|
Other requirements for a GM sound module include response to velocity,
|
|
mod wheel, aftertouch, sustain and expression pedal, main volume and
|
|
pan, and the All Notes Off and Reset All Controllers messages. The
|
|
module also must respond to both Pitch Bend and Pitch Bend Sensitivity
|
|
(a MIDI registered parameter). The default pitch bend range is +-2
|
|
semitones.
|
|
Middle C (C3) corresponds to MIDI key 60, and master tuning must be
|
|
adjustable. Finally, the MIDI Manufacturers Association (MMA) created a
|
|
new Universal System Exclusive message to turn General MIDI on and off
|
|
(for devices that might have "consumer" and "programmable" settings).
|
|
Table 3 (see below) summarizes these requirements.
|
|
General MIDI has room for future expansion, including additional drum
|
|
and instrument assignments and more required controllers. Also under
|
|
discussion is an "authorizing document" that would standardize things
|
|
such as channel assignments (e.g., lead on 1, bass on 2, etc.) and setup
|
|
information in a MIDI file.
|
|
|
|
Copies of the Level 1 Specification documents for General MIDI ($5 each
|
|
at last notice) are available from the Internation MIDI Association,
|
|
5316 West 57th Street Los Angeles, CA 90056, (213) 649-6434. The first
|
|
issue of the Journal of the MMA (back issues, $15 each) contains an
|
|
article by PassPort Designs and Stanley Junglieb about General MIDI.
|
|
|
|
|
|
Roland's GS Standard
|
|
|
|
When Warner New Media first proposed a General MIDI standard, most MMA
|
|
members gave it little thought. As discussions proceeded, Roland
|
|
listened and developed a sound module to meet the proposed
|
|
specification. At the same NAMM show where the MMA ratified General MIDI
|
|
Level 1, Roland showed their Sound Brush and Sound Canvas, a Standard
|
|
MIDI File player and GM-compatible sound module.
|
|
Some companies feel that General MIDI doesn't go far enough, so Roland
|
|
created a superset of General MIDI Level 1, which they call GS Standard.
|
|
It obeys all the protocols and sound maps of General MIDI and adds many
|
|
extra controllers and sounds. Some of the controllers use Unregistered
|
|
Parameter Numbers to give macro control over synth parameters such as
|
|
envelope attack and decay rates.
|
|
The new MIDI Bank Select message provides access to extra sounds
|
|
(including variations on the stock sounds and a re-creation of the MT-32
|
|
factory patches). The programs in each bank align with the original 128
|
|
in General MIDI's Instrument Patch Map, with eight banks housing related
|
|
families. The GS Standard includes a "fall back" system. If the Sound
|
|
Canvas receives a request for a bank/program number combination that
|
|
does not exist, it will reassign it to the master instrument in that
|
|
family. A set of Roland System Exclusive messages allows reconfiguration
|
|
and customization of the sound module.
|
|
This means that a Roland GS Standard sound module will correctly play
|
|
back any song designed for General MIDI. In addition, if the song's
|
|
creator wants to create some extra nuance, they can include the GS
|
|
Standard extensions in their sequence. None of these extensions are so
|
|
radical as to make the song unplayable on a normal GM sound module.
|
|
After all, compatibility is what MIDI - and especially General MIDI - is
|
|
all about.
|
|
Music authors interested in the GS Standard should contact Tom White
|
|
at RolandCorp USA, 7200 Dominion Circle, Los Angeles, CA 90040, (213)
|
|
685-5141.
|
|
|
|
**** TABLE 1 - General MIDI Instrument Patch Map ****
|
|
(groups sounds into sixteen families, w/8 instruments in each family)
|
|
|
|
Prog# Instrument Prog# Instrument
|
|
|
|
(1-8 PIANO) (9-16 CHROM PERCUSSION)
|
|
1 Acoustic Grand 9 Celesta
|
|
2 Bright Acoustic 10 Glockenspiel
|
|
3 Electric Grand 11 Music Box
|
|
4 Honky-Tonk 12 Vibraphone
|
|
5 Electric Piano 1 13 Marimba
|
|
6 Electric Piano 2 14 Xylophone
|
|
7 Harpsichord 15 Tubular Bells
|
|
8 Clav 16 Dulcimer
|
|
|
|
(17-24 ORGAN) (25-32 GUITAR)
|
|
17 Drawbar Organ 25 Acoustic Guitar(nylon)
|
|
18 Percussive Organ 26 Acoustic Guitar(steel)
|
|
19 Rock Organ 27 Electric Guitar(jazz)
|
|
20 Church Organ 28 Electric Guitar(clean)
|
|
21 Reed Organ 29 Electric Guitar(muted)
|
|
22 Accoridan 30 Overdriven Guitar
|
|
23 Harmonica 31 Distortion Guitar
|
|
24 Tango Accordian 32 Guitar Harmonics
|
|
|
|
(33-40 BASS) (41-48 STRINGS)
|
|
33 Acoustic Bass 41 Violin
|
|
34 Electric Bass(finger) 42 Viola
|
|
35 Electric Bass(pick) 43 Cello
|
|
36 Fretless Bass 44 Contrabass
|
|
37 Slap Bass 1 45 Tremolo Strings
|
|
38 Slap Bass 2 46 Pizzicato Strings
|
|
39 Synth Bass 1 47 Orchestral Strings
|
|
40 Synth Bass 2 48 Timpani
|
|
|
|
(49-56 ENSEMBLE) (57-64 BRASS)
|
|
49 String Ensemble 1 57 Trumpet
|
|
50 String Ensemble 2 58 Trombone
|
|
51 SynthStrings 1 59 Tuba
|
|
52 SynthStrings 2 60 Muted Trumpet
|
|
53 Choir Aahs 61 French Horn
|
|
54 Voice Oohs 62 Brass Section
|
|
55 Synth Voice 63 SynthBrass 1
|
|
56 Orchestra Hit 64 SynthBrass 2
|
|
|
|
(65-72 REED) (73-80 PIPE)
|
|
65 Soprano Sax 73 Piccolo
|
|
66 Alto Sax 74 Flute
|
|
67 Tenor Sax 75 Recorder
|
|
68 Baritone Sax 76 Pan Flute
|
|
69 Oboe 77 Blown Bottle
|
|
70 English Horn 78 Skakuhachi
|
|
71 Bassoon 79 Whistle
|
|
72 Clarinet 80 Ocarina
|
|
|
|
(81-88 SYNTH LEAD) (89-96 SYNTH PAD)
|
|
81 Lead 1 (square) 89 Pad 1 (new age)
|
|
82 Lead 2 (sawtooth) 90 Pad 2 (warm)
|
|
83 Lead 3 (calliope) 91 Pad 3 (polysynth)
|
|
84 Lead 4 (chiff) 92 Pad 4 (choir)
|
|
85 Lead 5 (charang) 93 Pad 5 (bowed)
|
|
86 Lead 6 (voice) 94 Pad 6 (metallic)
|
|
87 Lead 7 (fifths) 95 Pad 7 (halo)
|
|
88 Lead 8 (bass+lead) 96 Pad 8 (sweep)
|
|
|
|
(97-104 SYNTH EFFECTS) (105-112 ETHNIC)
|
|
97 FX 1 (rain) 105 Sitar
|
|
98 FX 2 (soundtrack) 106 Banjo
|
|
99 FX 3 (crystal) 107 Shamisen
|
|
100 FX 4 (atmosphere) 108 Koto
|
|
101 FX 5 (brightness) 109 Kalimba
|
|
102 FX 6 (goblins) 110 Bagpipe
|
|
103 FX 7 (echoes) 111 Fiddle
|
|
104 FX 8 (sci-fi) 112 Shanai
|
|
|
|
(113-120 PERCUSSIVE) (121-128 SOUND EFFECTS)
|
|
113 Tinkle Bell 121 Guitar Fret Noise
|
|
114 Agogo 122 Breath Noise
|
|
115 Steel Drums 123 Seashore
|
|
116 Woodblock 124 Bird Tweet
|
|
117 Taiko Drum 125 Telephone Ring
|
|
118 Melodic Tom 126 Helicopter
|
|
119 Synth Drum 127 Applause
|
|
120 Reverse Cymbal 128 Gunshot
|
|
|
|
|
|
**** TABLE 2 - General MIDI Percussion Key Map ****
|
|
(assigns drum sounds to note numbers. MIDI Channel 10 is for percussion)
|
|
|
|
MIDI Drum Sound MIDI Drum Sound
|
|
Key Key
|
|
|
|
35 Acoustic Bass Drum 59 Ride Cymbal 2
|
|
36 Bass Drum 1 60 Hi Bongo
|
|
37 Side Stick 61 Low Bongo
|
|
38 Acoustic Snare 62 Mute Hi Conga
|
|
39 Hand Clap 63 Open Hi Conga
|
|
40 Electric Snare 64 Low Conga
|
|
41 Low Floor Tom 65 High Timbale
|
|
42 Closed Hi-Hat 66 Low Timbale
|
|
43 High Floor Tom 67 High Agogo
|
|
44 Pedal Hi-Hat 68 Low Agogo
|
|
45 Low Tom 69 Cabasa
|
|
46 Open Hi-Hat 70 Maracas
|
|
47 Low-Mid Tom 71 Short Whistle
|
|
48 Hi-Mid Tom 72 Long Whistle
|
|
49 Crash Cymbal 1 73 Short Guiro
|
|
50 High Tom 74 Long Guiro
|
|
51 Ride Cymbal 1 75 Claves
|
|
52 Chinese Cymbal 76 Hi Wood Block
|
|
53 Ride Bell 77 Low Wood Block
|
|
54 Tambourine 78 Mute Cuica
|
|
55 Splash Cymbal 79 Open Cuica
|
|
56 Cowbell 80 Mute Triangle
|
|
57 Crash Cymbal 2 81 Open Triangle
|
|
58 Vibraslap
|
|
|
|
|
|
**** TABLE 3 - General MIDI minimum sound module specs ****
|
|
|
|
Voices:
|
|
A minimum of either 24 fully dynamically allocated voices
|
|
available simultaneously for both melodic and percussive sounds or 16
|
|
dynamically allocated voices for melody plus eight for percussion.
|
|
|
|
Channels:
|
|
General MIDI mode supports all sixteen MIDI channels. Each channel can
|
|
play a variable number of voices (polyphony). Each channel can play a
|
|
different instrument (timbre). Keybased Percussion is always on
|
|
Channel 10.
|
|
|
|
Instruments:
|
|
A minimum of sixteen different timbres playing various instrument
|
|
sounds. A minimum of 128 preset for Intruments (MIDI program numbers).
|
|
|
|
Note on/Note off:
|
|
Octabe Registration: Middle C(C3) = MIDI key 60. All Voices including
|
|
percussion respond to velocity.
|
|
|
|
Controllers:
|
|
Controller # Description
|
|
1 Modulation
|
|
7 Main Volume
|
|
10 Pan
|
|
11 Expression
|
|
64 Sustain
|
|
121 Reset All Controllers
|
|
123 All Notes Off
|
|
|
|
Registered Description
|
|
Parameter #
|
|
0 Pitch Bend Sensitivity
|
|
1 Fine Tuning
|
|
2 Coarse Tuning
|
|
|
|
Additional Channel Messages:
|
|
Channel Pressure (Aftertouch)
|
|
Pitch Bend
|
|
|
|
Power-Up Defaults:
|
|
Pitch Bend Amount = 0
|
|
Pitch Bend Sensitivity = +-2 semitones
|
|
Volume = 90
|
|
All Other Controllers = reset
|
|
|
|
(after Electronic Musician, 8/91 issue)
|
|
|
|
|
|
|