Without General MIDI, playback of MIDI files created on one MIDI instrument might sound totally different on a different MIDI instrument, because sound selection in MIDI is done by “Program Number”, not a description of the sound. The GM specification assigns specific sound names (such as “Electric Piano” and “Oboe”) to each Program Number, but the acoustic characteristics of the each sound are not defined.
Note: The GM 1 specification was superceded in 1999 by General MIDI 2 which added support for additional features and capabilities which had become commonly available since GM 1 devices first appeared. However, GM 1 remains a popular format and is still commonly used for music distributed in Standard MIDI File (*.mid) format.
GM 1 Features (Required)
To be GM 1 compatible, a GM 1 sound generating device (keyboard, sound module, sound card, IC, software program or other product) must meet the General MIDI System Level 1 performance requirements outlined below, instantaneously upon demand, and without additional modification or adjustment/configuration by the user.
- Voices: A minimum of either 24 fully dynamically allocated voices are available simultaneously for both melodic and percussive sounds, or 16 dynamically allocated voices are available for melody plus 8 for percussion. All voices respond to velocity.
- Channels: All 16 MIDI Channels are supported. Each Channel can play a variable number of voices (polyphony). Each Channel can play a different instrument (sound/patch/timbre). Key-based percussion is always on MIDI Channel 10.
- Instruments: A minimum of 16 simultaneous and different timbres playing various instruments. A minimum of 128 preset instruments (MIDI program numbers) conforming to the GM 1 Instrument Patch Map, and 47 percussion sounds which conform to the GM 1 Percussion Key Map.
- Channel Messages: Support for continuous controllers 1, 7, 10, 11, 64, 121 and 123; RPN #s 0, 1, 2; Channel Pressure, Pitch Bend.
- Other Messages: Respond to the data entry controller and the RPNs for fine and coarse tuning and pitch bend range, as well as all General MIDI Level 1 System Messages.
GM 1 Developer Information
The MMA’s GM Developer Guidelines document describes additional recommendations and clarifications of the GM Specification for content producers and device makers, to insure improved compatibility among GM products.