General MIDI (GM) is a series of standards defining a minimum set of features for MIDI-controlled synthesizers.
The original and most widely-used version is General MIDI System Level 1 (GM 1), first published in 1991. Most references to "General MIDI" or "GM" without further explanation refer to this version.
There are several standards extending GM 1:
- Roland GS (first released 1991), Roland's proprietary extension
- Yamaha XG (first released 1994), Yamaha's proprietary extension
- General MIDI System Level 2 (first released 1999), the official successor incorporating some features of GS and XG
There is also General MIDI Lite, first published in 2004. This is a subset of the original standard intended for cellphone ringtones and similar applications.
The remainder of this page is only concerned with GM 1.
General requirements
A General MIDI-compliant sound generator must meet the following requirements:[1]
Synthesis technology
|
No requirement (up to the manufacturer)
|
Available polyphony
|
24 voices (melody and percussion) or 16 voices (melody) + 8 voices (percussion)
|
Polyphony allocation
|
Dynamic
|
Channels
|
All 16
|
Channels are polyphonic
|
Yes
|
Key-based percussion
|
Always on channel 10
|
Minimum instrument presets
|
128 (GM Sound Set)
|
Minimum percussion presets
|
47 (GM Percussion Map)
|
Additionally, a General MIDI-compliant sound generator is recommended to have:[1]
- A master volume control
- A MIDI input
- Left and right audio outputs for stereo
- Headphones connectors
General MIDI does not require a specific type of synthesis and leaves the specifics of how things sound up to the manufacturer. The names of instruments in the Sound Set and Percussion Map are guidelines.[2]
The requirements of the General MIDI specification only apply when the sound generator is in General MIDI mode.[3]
MIDI implementation
General MIDI requires that:[1]
- MIDI note/key number 60 is Middle C
- Velocity is supported for all voices, including for percussion
- Voices are dynamically allocated
- Notes can re-attack, including for percussion
- Channel Pressure (Channel Aftertouch) is supported
- Pitch Bend is supported
The default settings on each channel must be:[1]
Pitch bend
|
0
|
Volume
|
100 (127 is the max volume)
|
Controllers
|
"normal"
|
Pitch bend sensitivity
|
±2 semitones
|
The following Control Change messages must be supported:[1]
Ctrl # |
Controller name
|
1 |
Modulation
|
7 |
Volume
|
10 |
Pan
|
11 |
Expression
|
64 |
Sustain
|
121 |
Reset All Controllers
|
123 |
All Notes Off
|
The following Registered Parameters must be supported:[1]
RPN |
Description
|
0 |
Pitch Bend Sensitivity
|
1 |
Fine Tuning
|
2 |
Coarse Tuning
|
SysEx messages
General MIDI defines two System Exclusive messages:[4]
Message |
Name
|
F0 7E 7F 09 01 F7
|
Turn General MIDI System On
|
F0 7E 7F 09 02 F7
|
Turn General MIDI System Off
|
The third byte (underlined) in both messages is a device ID. It is usually 7F for "broadcast".[4] The "System Off" message is only meaningful for devices that also have a non-General MIDI Mode.[4]
The "General MIDI System On" message is often called a "General MIDI Reset".
Sound Set
For channels other than channel 10, General MIDI defines a set of 128 sounds that can be selected with Program Change messages. The sounds are divided into 16 groups, as follows:[5]
Piano
Prog #
|
Instrument
|
1 |
Acoustic Grand Piano
|
2 |
Bright Acoustic Piano
|
3 |
Electric Grand Piano
|
4 |
Honky-tonk Piano
|
5 |
Electric Piano 1
|
6 |
Electric Piano 2
|
7 |
Harpsichord
|
8 |
Clavi
|
Chromatic Percussion
Prog #
|
Instrument
|
9 |
Celesta
|
10 |
Glockenspiel
|
11 |
Music Box
|
12 |
Vibraphone
|
13 |
Marimba
|
14 |
Xylophone
|
15 |
Tubular Bells
|
16 |
Dulcimer
|
Organ
Prog #
|
Instrument
|
17 |
Drawbar Organ
|
18 |
Percussive Organ
|
19 |
Rock Organ
|
20 |
Church Organ
|
21 |
Reed Organ
|
22 |
Accordion
|
23 |
Harmonica
|
24 |
Tango Accordion
|
Guitar
Prog #
|
Instrument
|
25 |
Acoustic Guitar (nylon)
|
26 |
Acoustic Guitar (steel)
|
27 |
Electric Guitar (jazz)
|
28 |
Electric Guitar (clean)
|
29 |
Electric Guitar (muted)
|
30 |
Overdriven Guitar
|
31 |
Distortion Guitar
|
32 |
Guitar harmonics
|
Bass
Prog #
|
Instrument
|
33 |
Acoustic Bass
|
34 |
Electric Bass (finger)
|
35 |
Electric Bass (pick)
|
36 |
Fretless Bass
|
37 |
Slap Bass 1
|
38 |
Slap Bass 2
|
39 |
Synth Bass 1
|
40 |
Synth Bass 2
|
Strings
Prog #
|
Instrument
|
41 |
Violin
|
42 |
Viola
|
43 |
Cello
|
44 |
Contrabass
|
45 |
Tremolo Strings
|
46 |
Pizzicato Strings
|
47 |
Orchestral Harp
|
48 |
Timpani
|
Ensemble
Prog #
|
Instrument
|
49 |
String Ensemble 1
|
50 |
String Ensemble 2
|
51 |
SynthStrings 1
|
52 |
SynthStrings 2
|
53 |
Choir Aahs
|
54 |
Voice Oohs
|
55 |
Synth Voice
|
56 |
Orchestra Hit
|
Brass
Prog #
|
Instrument
|
57 |
Trumpet
|
58 |
Trombone
|
59 |
Tuba
|
60 |
Muted Trumpet
|
61 |
French Horn
|
62 |
Brass Section
|
63 |
SynthBrass 1
|
64 |
SynthBrass 2
|
Reed
Prog #
|
Instrument
|
65 |
Soprano Sax
|
66 |
Alto Sax
|
67 |
Tenor Sax
|
68 |
Baritone Sax
|
69 |
Oboe
|
70 |
English Horn
|
71 |
Bassoon
|
72 |
Clarinet
|
Pipe
Prog #
|
Instrument
|
73 |
Piccolo
|
74 |
Flute
|
75 |
Recorder
|
76 |
Pan Flute
|
77 |
Blown Bottle
|
78 |
Shakuhachi
|
79 |
Whistle
|
80 |
Ocarina
|
Synth Lead
Prog #
|
Instrument
|
81 |
Lead 1 (square)
|
82 |
Lead 2 (sawtooth)
|
83 |
Lead 3 (calliope)
|
84 |
Lead 4 (chiff)
|
85 |
Lead 5 (charang)
|
86 |
Lead 6 (voice)
|
87 |
Lead 7 (fifths)
|
88 |
Lead 8 (bass + lead)
|
Synth Pad
Prog #
|
Instrument
|
89 |
Pad 1 (new age)
|
90 |
Pad 2 (warm)
|
91 |
Pad 3 (polysynth)
|
92 |
Pad 4 (choir)
|
93 |
Pad 5 (bowed)
|
94 |
Pad 6 (metallic)
|
95 |
Pad 7 (halo)
|
96 |
Pad 8 (sweep)
|
Synth Effects
Prog #
|
Instrument
|
97 |
FX 1 (rain)
|
98 |
FX 2 (soundtrack)
|
99 |
FX 3 (crystal)
|
100 |
FX 4 (atmosphere)
|
101 |
FX 5 (brightness)
|
102 |
FX 6 (goblins)
|
103 |
FX 7 (echoes)
|
104 |
FX 8 (sci-fi)
|
Ethnic
Prog #
|
Instrument
|
105 |
Sitar
|
106 |
Banjo
|
107 |
Shamisen
|
108 |
Koto
|
109 |
Kalimba
|
110 |
Bag pipe
|
111 |
Fiddle
|
112 |
Shanai
|
Percussive
Prog #
|
Instrument
|
113 |
Tinkle Bell
|
114 |
Agogo
|
115 |
Steel Drums
|
116 |
Woodblock
|
117 |
Taiko Drum
|
118 |
Melodic Tom
|
119 |
Synth Drum
|
120 |
Reverse Cymbal
|
Sound Effects
Prog #
|
Instrument
|
121 |
Guitar Fret Noise
|
122 |
Breath Noise
|
123 |
Seashore
|
124 |
Bird Tweet
|
125 |
Telephone Ring
|
126 |
Helicopter
|
127 |
Applause
|
128 |
Gunshot
|
Percussion Map
General MIDI reserves channel 10 for key-based percussion and defines a set of 47 percussion sounds that can be played with Note On/Note Off messages. The sounds are as follows:[6]
Note |
Note # |
Drum sound
|
B1 | 35 | Acoustic Bass Drum |
C2 | 36 | Bass Drum 1 |
C♯2 | 37 | Side Stick |
D2 | 38 | Acoustic Snare |
D♯2 | 39 | Hand Clap |
E2 | 40 | Electric Snare |
F2 | 41 | Low Floor Tom |
F♯2 | 42 | Closed Hi Hat |
G2 | 43 | High Floor Tom |
G♯2 | 44 | Pedal Hi-Hat |
A2 | 45 | Low Tom |
A♯2 | 46 | Open Hi-Hat |
B2 | 47 | Low-Mid Tom |
C3 | 48 | Hi Mid Tom |
C♯3 | 49 | Crash Cymbal 1 |
D3 | 50 | High Tom |
D♯3 | 51 | Ride Cymbal 1 |
E3 | 52 | Chinese Cymbal |
F3 | 53 | Ride Bell |
F♯3 | 54 | Tambourine |
G3 | 55 | Splash Cymbal |
G♯3 | 56 | Cowbell |
A3 | 57 | Crash Cymbal 2 |
A♯3 | 58 | Vibraslap |
B3 | 59 | Ride Cymbal 2 |
C4 | 60 | Hi Bongo |
C♯4 | 61 | Low Bongo |
D4 | 62 | Mute Hi Conga |
D♯4 | 63 | Open Hi Conga |
E4 | 64 | Low Conga |
F4 | 65 | High Timbale |
F♯4 | 66 | Low Timbale |
G4 | 67 | High Agogo |
G♯4 | 68 | Low Agogo |
A4 | 69 | Cabasa |
A♯4 | 70 | Maracas |
B4 | 71 | Short Whistle |
C5 | 72 | Long Whistle |
C♯5 | 73 | Short Guiro |
D5 | 74 | Long Guiro |
D♯5 | 75 | Claves |
E5 | 76 | Hi Wood Block |
F5 | 77 | Low Wood Block |
F♯5 | 78 | Mute Cuica |
G5 | 79 | Open Cuica |
G♯5 | 80 | Mute Triangle |
A5 | 81 | Open Triangle
|
References
- ↑ 1.0 1.1 1.2 1.3 1.4 1.5 General MIDI System Level 1 Specification, page 2
- ↑ General MIDI System Level 1 Specification, page 7
- ↑ General MIDI System Level 1 Specification, page 1
- ↑ 4.0 4.1 4.2 General MIDI System Level 1 Specification, page 6
- ↑ General MIDI System Level 1 Specification, page 5, tables 1 and 2
- ↑ General MIDI System Level 1 Specification, page 6, table 3
Resources