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.
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]
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]