General MIDI
202312
224767905
2008-07-10T09:45:23Z
SilvonenBot
6351353
robot Adding: [[es:General MIDI]]
{{otheruses4|the synthesizer specification|the British DJ|General Midi (DJ)}}
'''General MIDI''' or '''GM''' is a specification for [[synthesizer]]s which imposes several requirements beyond the more abstract [[MIDI]] standard. While MIDI itself provides a [[Communications protocol|protocol]] which ensures that different instruments can interoperate at a fundamental level (e.g. that pressing keys on a MIDI keyboard will cause an attached MIDI sound module to play musical notes), General MIDI (or GM) goes further in two ways: it requires that all GM-compatible instruments meet a certain minimal set of features, such as being able to play at least 24 notes simultaneously ([[Polyphony (instrument)|polyphony]]), and it attaches certain interpretations to many parameters and control messages which were left unspecified in MIDI, such as defining instrument sounds for each of 128 program numbers.
General MIDI was first standardised in 1991 by the [[MIDI Manufacturers Association]] (MMA) and the [[Japan MIDI Standards Committee]] (JMSC), and has since been adopted as an addendum to the main MIDI standard. It has largely become required to be able to:
* Allow 24 voices to be active simultaneously (including at least 16 melodic and 8 percussive voices)
* Respond to note velocity
* Support all 16 channels simultaneously (with channel 10 reserved for percussion)
* Support polyphony (multiple simultaneous notes) on each channel
== Parameter interpretations ==
GM Instruments must also obey the following conventions for program and controller events:
=== Program change events ===
The following table shows which instrument sound corresponds to each program change number. Note that for purposes of computer programming, this table should start at 0 instead of 1 and thus use all of the 7-bit range (0-127) allowed by the MIDI program change event. It should also be noted that some MIDI keyboards with displays show these program numbers as in the table (1-128), while others show the range as coded (0-127).
===Melodic sounds===
<table width="80%"><tr><td><tt>
'''Piano:'''<br>
1 [[Grand piano|Acoustic Grand Piano]]<br>
2 [[Piano|Bright Acoustic Piano]]<br>
3 [[Electric piano|Electric Grand Piano]]<br>
4 [[Honky tonk|Honky-tonk Piano]]<br>
5 [[Electric piano|Electric Piano]] 1<br>
6 Electric Piano 2<br>
7 [[Harpsichord]]<br>
8 [[Clavinet]]<br>
'''Chromatic Percussion:'''<br>
9 [[Celesta]]<br>
10 [[Glockenspiel]]<br>
11 [[Musical box|Music Box]]<br>
12 [[Vibraphone]]<br>
13 [[Marimba]]<br>
14 [[Xylophone]]<br>
15 [[Tubular bell|Tubular Bells]]<br>
16 [[Hammered dulcimer|Dulcimer]]<br>
'''Organ:'''<br>
17 [[Drawbar organ|Drawbar Organ]]<br>
18 [[Percussive]] Organ<br>
19 [[Rock organ|Rock Organ]]<br>
20 [[Church Organ]]<br>
21 [[Reed Organ]]<br>
22 [[Accordion]]<br>
23 [[Harmonica]]<br>
24 [[Bandoneón|Tango Accordion]]<br>
'''[[Guitar]]:'''<br>
25 [[Classical guitar|Acoustic Guitar (nylon)]]<br>
26 [[Steel-string guitar|Acoustic Guitar (steel)]]<br>
27 [[Jazz guitar|Electric Guitar (jazz)]]<br>
28 [[Electric guitar|Electric Guitar (clean)]]<br>
29 [[Electric guitar|Electric Guitar (muted)]]<br>
30 [[Electric guitar|Overdriven Guitar]]<br>
31 [[Electric guitar|Distortion Guitar]]<br>
32 [[Harmonic|Guitar harmonics]]<br>
'''Bass:'''<br>
33 [[Acoustic bass guitar|Acoustic Bass]]<br>
34 [[Bass guitar|Electric Bass (finger)]]<br>
35 [[Bass guitar|Electric Bass (pick)]]<br>
36 [[Fretless guitar|Fretless Bass]]<br>
37 [[Bass guitar|Slap Bass 1]]<br>
38 [[Bass guitar|Slap Bass 2]]<br>
39 [[Bass guitar|Synth Bass 1]]<br>
40 [[Bass guitar|Synth Bass 2]]<br>
'''Strings:'''<br>
41 [[Violin]]<br>
42 [[Viola]]<br>
43 [[Cello]]<br>
44 [[Contrabass]]<br>
45 [[String instrument|Tremolo Strings]]<br>
46 [[Pizzicato]] Strings<br>
47 [[Harp|Orchestral Harp]]<br>
48 [[Timpani]]<br>
'''Strings (continued):'''<br>
49 [[String instrument|String]] [[Musical ensemble|Ensemble]] 1<br>
50 String Ensemble 2<br>
51 [[Synthesizer|Synth]] [[String instrument|Strings]] 1<br>
52 Synth Strings 2<br>
53 [[Choir]] Aahs<br>
54 [[Human voice|Voice]] Oohs<br>
55 Synth Voice<br>
56 [[Orchestra hit|Orchestra Hit]]<br>
'''Brass:'''<br>
57 [[Trumpet]]<br>
58 [[Trombone]]<br>
59 [[Tuba]]<br>
60 [[Mute (music)|Muted]] [[Trumpet]]<br>
61 [[French Horn]]<br>
62 [[Brass Section]]<br>
63 Synth Brass 1<br>
64 Synth Brass 2<br>
</tt></td><td><tt>
'''Reed:'''<br>
65 [[Soprano saxophone|Soprano Sax]]<br>
66 [[Alto saxophone|Alto Sax]]<br>
67 [[Tenor saxophone|Tenor Sax]]<br>
68 [[Baritone saxophone|Baritone Sax]]<br>
69 [[Oboe]]<br>
70 [[English Horn]]<br>
71 [[Bassoon]]<br>
72 [[Clarinet]]<br>
'''Pipe:'''<br>
73 [[Piccolo]]<br>
74 [[Flute]]<br>
75 [[Recorder]]<br>
76 [[Pan Flute]]<br>
77 [[Blown Bottle]]<br>
78 [[Shakuhachi]]<br>
79 [[Whistle]]<br>
80 [[Ocarina]]<br>
'''Synth Lead:'''<br>
81 Lead 1 ([[square wave|square]])<br>
82 Lead 2 ([[sawtooth wave|sawtooth]])<br>
83 Lead 3 ([[Calliope (music)|calliope]])<br>
84 Lead 4 ([[chiff]])<br>
85 Lead 5 ([[charang]])<br>
86 Lead 6 (voice)<br>
87 Lead 7 ([[fifths]])<br>
88 Lead 8 (bass + lead)<br>
'''Synth Pad:'''<br>
89 Pad 1 (new age)<br>
90 Pad 2 (warm)<br>
91 Pad 3 (polysynth)<br>
92 Pad 4 (choir)<br>
93 Pad 5 (bowed)<br>
94 Pad 6 (metallic)<br>
95 Pad 7 (halo)<br>
96 Pad 8 (sweep)<br>
'''Synth Effects:'''<br>
97 [[Sound effect|FX]] 1 (rain)<br>
98 FX 2 (soundtrack)<br>
99 FX 3 (crystal)<br>
100 FX 4 (atmosphere)<br>
101 FX 5 (brightness)<br>
102 FX 6 (goblins)<br>
103 FX 7 (echoes)<br>
104 FX 8 (sci-fi)<br>
'''Ethnic:'''<br>
105 [[Sitar]]<br>
106 [[Banjo]]<br>
107 [[Shamisen]]<br>
108 [[Koto (musical instrument)|Koto]]<br>
109 [[Marímbula|Kalimba]]<br>
110 [[Bagpipes|Bag pipe]]<br>
111 [[Fiddle]]<br>
112 [[Shanai]]<br>
'''Percussive:'''<br>
113 [[Tinkle Bell]]<br>
114 [[Agogô|Agogo]]<br>
115 [[Steelpan|Steel Drums]]<br>
116 [[Wood block|Woodblock]]<br>
117 [[Taiko|Taiko Drum]]<br>
118 [[Tom-tom drum|Melodic Tom]]<br>
119 Synth Drum<br>
'''Sound effects:'''<br>
120 Reverse [[Cymbal]]<br>
121 Guitar [[Fret]] Noise<br>
122 Breath Noise<br>
123 [[Coast|Seashore]]<br>
124 [[Bird vocalisation|Bird Tweet]]<br>
125 [[Ring (telephone)|Telephone Ring]]<br>
126 [[Helicopter]]<br>
127 [[Applause]]<br>
128 [[Gunshot]]<br>
</tt></td></tr></table>
=== Percussion notes===
[[Image:GMStandardDrumMap.gif|thumb|right|GM Standard Drum Map]]
Channel 10 is reserved for [[percussion instrument|percussion]] under General MIDI; this channel always sounds as percussion regardless of whatever program change numbers it may be sent, and different note numbers are interpreted as different instruments:
<table width="80%"><tr><td><tt>
35 [[Bass drum|Bass Drum]] 2<br>
36 Bass Drum 1<br>
37 Side Stick<br>
38 [[Snare drum|Snare Drum]] 1<br>
39 Hand Clap<br>
40 Snare Drum 2<br>
41 Low [[Tom-tom drum|Tom]] 2<br>
42 Closed [[Hi-hat]]<br>
43 Low Tom 1<br>
44 Pedal Hi-hat<br>
45 Mid Tom 2<br>
46 Open Hi-hat<br>
47 Mid Tom 1<br>
48 High Tom 2<br>
49 [[Crash cymbal|Crash Cymbal]] 1<br>
50 High Tom 1<br>
51 [[Ride cymbal|Ride Cymbal]] 1<br>
52 Chinese Cymbal<br>
53 Ride Bell<br>
54 [[Tambourine]]<br>
55 [[Splash cymbal|Splash Cymbal]]<br>
56 [[Cowbell]]<br>
57 Crash Cymbal 2<br>
58 [[Vibraslap|Vibra Slap]]<br>
</tt></td><td><tt>
59 Ride Cymbal 2<br>
60 High [[Bongo drum|Bongo]]<br>
61 Low Bongo<br>
62 Mute High [[Conga]]<br>
63 Open High Conga<br>
64 Low Conga<br>
65 High [[Timbales|Timbale]]<br>
66 Low Timbale<br>
67 High Agogo<br>
68 Low Agogo<br>
69 [[Cabasa]]<br>
70 [[Maraca]]s<br>
71 Short [[Whistle]]<br>
72 Long Whistle<br>
73 Short [[Guiro]]<br>
74 Long Guiro<br>
75 [[Claves]]<br>
76 High [[Wood block|Wood Block]]<br>
77 Low Wood Block<br>
78 Mute [[Cuica]]<br>
79 Open Cuica<br>
80 Mute [[Triangle (instrument)|Triangle]]<br>
81 Open Triangle<br>
</tt></td></tr></table>
=== Controller events ===
GM also specifies which operations should be performed by several controllers:[http://www.indiana.edu/~emusic/cntrlnumb.html][http://www.midisite.com/info/synth/Control.htm]
<tt>
1 Modulation<br>
6 Data Entry MSB<br>
7 Volume<br>
10 Pan<br>
11 Expression<br>
38 Data Entry LSB<br>
64 [[Sustain]]<br>
100 RPN LSB<br>
101 RPN MSB<br>
121 Reset all controllers<br>
123 All notes off<br>
</tt>
===RPN===
Setting Registered Parameters requires sending (numbers are decimal):
#two Control Change messages using Control Numbers 101 and 100 to select the parameter, followed by
#any number of Data Entry messages of one or two bytes (MSB = Controller #6, LSB = Controller #38), and finally
#an "End of RPN" message
The following global [[Registered Parameter Numbers]] (RPNs) are standardised <ref>[http://www.midi.org/about-midi/table3.shtml MIDI Messages Table 3<!-- Bot generated title -->]</ref> (the parameter is specified by RPN LSB/MSB pair and the value is set by Data Entry LSB/MSB pair):
<tt>
0,0 Pitch bend range<br>
1,0 Channel Fine tuning<br>
2,0 Channel Coarse tuning<br>
3,0 Tuning Program Change<br>
4,0 Tuning Bank Select<br>
5,0 Modulation Depth Range<br>
127,127 RPN Null
</tt>
For example: RPN control sequence to set coarse tuning to A440 (parm 2, value 64):<br>
101:0, 100:2, 6:64, 101:127, 100:127
=== System Exclusive messages ===
Two GM [[System Exclusive]] ("SysEx") messages are defined: one to enable and disable General MIDI compatibility, on devices which also allow modes which are not GM-compatible; and the other to modify an instrument's master volume.
== GS extensions ==
{{Main article|Roland GS}}
The first GM synthesizer in [[Roland Sound Canvas]] line featured a set of extensions to General MIDI standard. The most apparent addition was the ability to address multiple banks of sounds by using additional pair of controllers, cc#0 (Bank Select [[Most significant byte|MSB]]) and cc#32 (Bank Select [[Least significant byte|LSB]]), to specify up to 65536 'variation' sounds.
Other most notable features were 9 Drum kits with 14 additional drum sounds each, Control Change messages for controlling the send level of sound effect blocks (cc#91-94), entering additional parameters (cc#98-101), portamento, sostenuto, soft pedal (cc#65-67), and model-specific SysEx messages for setting various parameters of the synth engine.
== General MIDI Level 2==<!-- This section is linked from [[Musical Instrument Digital Interface]] -->
{{Main article|General MIDI Level 2}}
In 1999, the standard was once again updated to include more controllers, patches, RPNs and SysEx messages. Here's a quick overview of the changes in comparison to GM/GS:
* Number of Notes - minimum 32 simultaneous notes
* Simultaneous Percussion Kits - up to 2 (Channels 10/11)
* Additional 128 melodic sounds are included in variation banks, for a total of 256
* 9 GS Drum kits are included
* Additional Control Change messages
** Filter Resonance (Timbre/Harmonic Intensity) (cc#71)
** [[ADSR_envelope|Release]] Time (cc#72)
** Brightness/Cutoff Frequency (cc#74)
** [[ADSR_envelope|Decay]] Time (cc#75)
** [[Vibrato]] Rate (cc#76)
** Vibrato Depth (cc#77)
** Vibrato Delay (cc#78)
* Registered Parameter Numbers (RPNs)
** [[Modulation]] Depth Range (Vibrato Depth Range)
*Universal SysEx messages
** Master Volume, Fine Tuning, Coarse Tuning
** [[Reverb]] Type, Time
** [[Chorus_effect|Chorus]] Type, Mod Rate, Mod Depth, Feedback, Send to Reverb
** Controller Destination Setting
** Scale/Octave Tuning Adjust
** Key-Based Instrument Controllers
** GM2 System On
Additional melodic instruments can be accessed by setting CC#32 to 121 and then using CC#0 to select the bank before a Program Change. The most expanded group is Acoustic Pianos.
==See also==
* [[Comparison of MIDI standards]]
* [[Soundfont]]
==References==
<references/>
==External links==
* [http://www.midi.org/ MIDI Manufacturers Association] (MMA)
* [http://www.borg.com/~jglatt/ MIDI Technical Fanatic's Brainwashing Center]
* [http://www.voidaudio.net/ The Void: PC audio resource]
* [http://www.midisite.co.uk/ MIDIsite] a search engine for free midi files on the Internet
*[http://www.kuhmann.com/Yamaha.htm Disklavier World] Public Domain MIDI-music in FIL (e-SEQ format) for YAMAHA Disklavier pianos ~ live performances!
[[Category:Music notation file formats]]
[[Category:MIDI standards]]
[[de:General MIDI]]
[[es:General MIDI]]
[[fr:General MIDI]]
[[ko:일반 MIDI]]
[[it:General MIDI]]
[[nl:General MIDI]]
[[ja:General MIDI]]
[[pt:General MIDI]]
[[fi:General MIDI]]