General MIDI Level 2

General MIDI Level 2 or GM2 is a specification for synthesizers which defines several requirements beyond the more abstract MIDI standard and is based on General MIDI, GS extensions, and XG extensions. It was adopted in 1999 by the MIDI Manufacturers Association (MMA).

General requirements

 * Number of Notes: 32 simultaneous notes
 * MIDI Channels: 16
 * Simultaneous Melodic Instruments – up to 16 (all Channels)
 * Simultaneous Percussion Kits – up to 2 (Channel 10/11)

Program and bank change events
General MIDI 2 compatible synthesizers access all of the 256 instruments by setting cc#0 (Bank Select MSB) to 121 and using cc#32 (Bank Select LSB) to select the variation bank before a Program Change. Variation bank 0 contains the full GM — that is, General MIDI 1 — sound set. Variations using other bank numbers are new to General MIDI 2, and correspond to variation sounds introduced in Roland GS and Yamaha XG.

Drum sounds
These are the same patch numbers as defined in the original version of GS. Drum bank is accessed by setting cc#0 (Bank Select MSB) to 120 and cc#32 (Bank Select LSB) to 0 and PC (Program Change) to select drum kit.

Additional percussion notes
These are the same GS drum notes and span Drum Kits 1 to 49:

Supported Registered Parameter Numbers (RPNs)

 * Pitch Bend Sensitivity
 * Channel Fine Tune
 * Channel Coarse Tune
 * Modulation Depth Range (Vibrato Depth Range)
 * RPN NULL

Supported Universal System Exclusive (SysEx) messages

 * Master Volume
 * Master Fine Tuning
 * Master Coarse Tuning
 * Reverb Type
 * Reverb Time
 * Chorus Type
 * Chorus Mod Rate
 * Chorus Mod Depth
 * Chorus Feedback
 * Chorus Send to Reverb
 * Controller Destination Setting
 * Scale/Octave Tuning Adjust
 * Key-Based Instrument Controllers
 * GM2 System On