General MIDI Instrument Program Numbers

 
Prog#   Instrument      Prog#   Instrument
(1-8      PIANO)        (9-16 CHROM PERCUSSION)
1       Acoustic Grand     9    Celesta
2       Bright Acoustic   10    Glockenspiel
3       Electric Grand    11    Music Box
4       Honky-Tonk        12    Vibraphone
5       Electric Piano1   13    Marimba
6       Electric Piano2   14    Xylophone
7       Harpsichord       15    Tubular Bells
8       Clav              16    Dulcimer

(17-24 ORGAN)          (25-32 GUITAR)
17      Drawbar Organ     25    Acoustic Guitar(nylon)
18      Percussive Organ  26    Acoustic Guitar(steel)
19      Rock Organ        27    Electric Guitar(jazz)
20      Church Organ      28    Electric Guitar(clean) 
21      Reed Organ        29    Electric Guitar(muted)
22      Accoridan         30    Overdriven Guitar
23      Harmonica         31    Distortion Guitar
24      Tango Accordian   32    Guitar Harmonics

(33-40 BASS)           (41-48 STRINGS)
33      Acoustic Bass     41    Violin
34      Electric Bass(finger)   42 Viola
35      Electric Bass(pick)     43 Cello
36      Fretless Bass     44    Contrabass
37      Slap Bass 1       45    Tremolo Strings
38      Slap Bass 2       46    Pizzicato Strings
39      Synth Bass 1      47    Orchestral Strings
40      Synth Bass 2      48    Timpani

(49-56 ENSEMBLE)        (57-64 BRASS)
49      String Ensemble 1  57   Trumpet
50      String Ensemble 2  58   Trombone
51      SynthStrings 1     59   Tuba
52      SynthStrings 2     60   Muted Trumpet
53      Choir Aahs         61   French Horn
54      Voice Oohs         62   Brass Section
55      Synth Voice        63   SynthBrass 1
56      Orchestra Hit      64   SynthBrass 2

(65-72 REED)            (73-80 PIPE)
65      Soprano Sax       73    Piccolo
66      Alto Sax          74    Flute
67      Tenor Sax         75    Recorder
68      Baritone Sax      76    Pan Flute
69      Oboe              77    Blown Bottle
70      English Horn      78    Skakuhachi
71      Bassoon           79    Whistle
72      Clarinet          80    Ocarina

(81-88 SYNTH LEAD)       (89-96 SYNTH PAD)
81      Lead 1 (square)    89   Pad 1 (new age)
82      Lead 2 (sawtooth)  90   Pad 2 (warm)
83      Lead 3 (calliope)  91   Pad 3 (polysynth)
84      Lead 4 (chiff)     92   Pad 4 (choir)
85      Lead 5 (charang)   93   Pad 5 (bowed)
86      Lead 6 (voice)     94   Pad 6 (metallic)
87      Lead 7 (fifths)    95   Pad 7 (halo)
88      Lead 8 (bass+lead) 96   Pad 8 (sweep)
        
(97-104 SYNTH EFFECTS)   (105-112 ETHNIC)
97      FX 1 (rain)        105  Sitar
98      FX 2 (soundtrack)  106  Banjo
99      FX 3 (crystal)     107 Shamisen
100     FX 4 (atmosphere)  108  Koto
101     FX 5 (brightness)  109  Kalimba
102     FX 6 (goblins)     110  Bagpipe
103     FX 7 (echoes)      111  Fiddle
104     FX 8 (sci-fi)      112  Shanai

(113-120 PERCUSSIVE)     (121-128 SOUND EFFECTS)
113     Tinkle Bell        121  Guitar Fret Noise
114     Agogo              122  Breath Noise
115     Steel Drums        123  Seashore
116     Woodblock          124  Bird Tweet
117     Taiko Drum         125  Telephone Ring
118     Melodic Tom        126  Helicopter
119     Synth Drum         127  Applause
120     Reverse Cymbal     128  Gunshot

General Midi Controller Numbers

The controllers are designated into classes, for whether they contain one-off events, boolean information or continuous changes that can be interpolated in the time domain to the next such control change on the same channel.

  {0, "Bank Select (coarse)", MIDI_CONTROLLER_EVENT }, 
  {1, "Modulation Wheel", MIDI_CONTROLLER_CONT }, 
  {2, "Breath Contoller", MIDI_CONTROLLER_CONT }, 
  {3, "Undefined", MIDI_CONTROLLER_CONT }, 
  {4, "Foot Controller", MIDI_CONTROLLER_CONT }, 
  {5, "Portamento Time", MIDI_CONTROLLER_CONT }, 
  {6, "Data Entry MSB", MIDI_CONTROLLER_CONT }, 
  {7, "Main Volume", MIDI_CONTROLLER_CONT }, 
  {8, "Balance", MIDI_CONTROLLER_CONT }, 
  {9, "Undefined", MIDI_CONTROLLER_CONT }, 
  {10, "Pan", MIDI_CONTROLLER_CONT }, 
  {11, "Expression", MIDI_CONTROLLER_CONT }, 
  {12, "Effect Control 1", MIDI_CONTROLLER_CONT }, 
  {13, "Effect Control 2", MIDI_CONTROLLER_CONT }, 
  {14, "Anon14", MIDI_CONTROLLER_CONT }, 
  {15, "Anon15", MIDI_CONTROLLER_CONT }, 
  {16, "General Purpose Slider 1", MIDI_CONTROLLER_CONT }, 
  {17, "General Purpose Slider 2", MIDI_CONTROLLER_CONT }, 
  {18, "General Purpose Slider 3", MIDI_CONTROLLER_CONT }, 
  {19, "General Purpose Slider 4", MIDI_CONTROLLER_CONT }, 
  {20, "Anon20", MIDI_CONTROLLER_CONT }, 
  {21, "Anon21", MIDI_CONTROLLER_CONT }, 
  {22, "Anon23", MIDI_CONTROLLER_CONT }, 
  {23, "Anon23", MIDI_CONTROLLER_CONT }, 
  {24, "Anon24", MIDI_CONTROLLER_CONT }, 
  {25, "Anon25", MIDI_CONTROLLER_CONT }, 
  {26, "Anon26", MIDI_CONTROLLER_CONT }, 
  {27, "Anon27", MIDI_CONTROLLER_CONT }, 
  {28, "Pocust28", MIDI_CONTROLLER_CONT }, 
  {29, "Anon29", MIDI_CONTROLLER_CONT }, 
  {30, "Anon30", MIDI_CONTROLLER_CONT }, 
  {31, "Anon31", MIDI_CONTROLLER_CONT }, 
  {32, "Bank Select", MIDI_CONTROLLER_EVENT }, 
  {32+1, "Modulation Wheel (fine)", MIDI_CONTROLLER_CONT }, 
  {32+2, "Breath Contoller (fine)", MIDI_CONTROLLER_CONT }, 
  {32+3, "Undefined (fine)", MIDI_CONTROLLER_CONT }, 
  {32+4, "Foot Controller (fine)", MIDI_CONTROLLER_CONT }, 
  {32+5, "Portamento Time (fine)", MIDI_CONTROLLER_CONT }, 
  {32+6, "Data Entry MSB (fine)", MIDI_CONTROLLER_CONT }, 
  {32+7, "Main Volume (fine)", MIDI_CONTROLLER_CONT }, 
  {32+8, "Balance (fine)", MIDI_CONTROLLER_CONT }, 
  {32+9, "Undefined (fine)", MIDI_CONTROLLER_CONT }, 
  {32+10, "Pan (fine)", MIDI_CONTROLLER_CONT }, 
  {32+11, "Expression (fine)", MIDI_CONTROLLER_CONT }, 
  {32+12, "Effect Control 1 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+13, "Effect Control 2 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+14, "Anon14 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+15, "Anon15 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+16, "General Purpose Slider 1 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+17, "General Purpose Slider 2 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+18, "General Purpose Slider 3 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+19, "General Purpose Slider 4 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+20, "Anon20 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+21, "Anon21 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+22, "Anon23 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+23, "Anon23 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+24, "Anon24 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+25, "Anon25 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+26, "Anon26 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+27, "Anon27 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+28, "Pocust28 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+29, "Anon29 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+30, "Anon30 (fine)", MIDI_CONTROLLER_CONT }, 
  {32+31, "Anon31 (fine)", MIDI_CONTROLLER_CONT }, 
  {64, "Damper Pedal (Sustain)", MIDI_CONTROLLER_BOOL }, 
  {65, "Portamento", MIDI_CONTROLLER_BOOL }, 
  {66, "Sostenuto", MIDI_CONTROLLER_BOOL }, 
  {67, "Soft Pedal", MIDI_CONTROLLER_BOOL }, 
  {68, "Legato Footswitch", MIDI_CONTROLLER_BOOL }, 
  {69, "Hold 2", MIDI_CONTROLLER_BOOL }, 
  {70, "Sound Controller 1 (Sound Variation)", MIDI_CONTROLLER_CONT }, 
  {71, "Sound Controller 2 (Timbre/Harmonic Content)", MIDI_CONTROLLER_CONT }, 
  {72, "Sound Controller 3 (Release Time)", MIDI_CONTROLLER_CONT }, 
  {73, "Sound Controller 4 (Attack Time)", MIDI_CONTROLLER_CONT }, 
  {74, "Sound Controller 5 (Brightness)", MIDI_CONTROLLER_CONT }, 
  {75, "Sound Controller 6 (Decay)", MIDI_CONTROLLER_CONT }, 
  {76, "Sound Controller 7 (Vibrato Depth)", MIDI_CONTROLLER_CONT }, 
  {77, "Sound Controller 8 (Vibrato Delay)", MIDI_CONTROLLER_CONT }, 
  {78, "Sound Controller 9 ", MIDI_CONTROLLER_CONT }, 
  {79, "Sound Controller 10", MIDI_CONTROLLER_CONT }, 
  {80, "GP Button 1", MIDI_CONTROLLER_BOOL }, 
  {81, "GP Button 2", MIDI_CONTROLLER_BOOL }, 
  {82, "GP Button 3", MIDI_CONTROLLER_BOOL }, 
  {83, "GP Button 4", MIDI_CONTROLLER_BOOL }, 
  {84, "Portamento Control", MIDI_CONTROLLER_CONT }, 
  {85, "Unused/Above", MIDI_CONTROLLER_CONT }, 
  {86, "Unused/Below", MIDI_CONTROLLER_CONT }, 
  {87, "Unused/Left", MIDI_CONTROLLER_CONT }, 
  {88, "Unused/Right", MIDI_CONTROLLER_CONT }, 
  {89, "Unused/Forward", MIDI_CONTROLLER_CONT }, 
  {90, "Unused/Behind", MIDI_CONTROLLER_CONT }, 
  {91, "Effects 1 Depth (Effects Depth)", MIDI_CONTROLLER_CONT }, 
  {92, "Effects 2 Depth (Tremolo Depth)", MIDI_CONTROLLER_CONT }, 
  {93, "Effects 3 Depth (Chorus Depth)", MIDI_CONTROLLER_CONT }, 
  {94, "Effects 4 Depth (Detune Depth)", MIDI_CONTROLLER_CONT }, 
  {95, "Effects 5 Depth (Phaser Depth)", MIDI_CONTROLLER_CONT }, 
  {96, "Data Increment", 0 }, 
  {97, "Data Decrement", 0 }, 
  {98, "Non-Registered Parameter Number LSB", 0 }, 
  {99, "Non-Registered Parameter Number LSB", 0 }, 
  {100, "Registered Parameter Number LSB", 0 }, 
  {101, "Registered Parameter Number MSB", 0 }, 
  {102, "Anon102", MIDI_CONTROLLER_EVENT }, 
  {103, "Anon103", MIDI_CONTROLLER_EVENT }, 
  {104, "Anon104", MIDI_CONTROLLER_EVENT }, 
  {105, "Anon105", MIDI_CONTROLLER_EVENT }, 
  {106, "Anon106", MIDI_CONTROLLER_EVENT }, 
  {107, "Anon107", MIDI_CONTROLLER_EVENT }, 
  {108, "Anon108", MIDI_CONTROLLER_EVENT }, 
  {109, "Anon109", MIDI_CONTROLLER_EVENT }, 
  {110, "Anon110", MIDI_CONTROLLER_EVENT }, 
  {111, "Anon111", MIDI_CONTROLLER_EVENT }, 
  {112, "Anon112", MIDI_CONTROLLER_EVENT }, 
  {113, "Anon113", MIDI_CONTROLLER_EVENT }, 
  {114, "Anon114", MIDI_CONTROLLER_EVENT }, 
  {115, "Anon115", MIDI_CONTROLLER_EVENT }, 
  {116, "Anon116", MIDI_CONTROLLER_EVENT }, 
  {117, "Anon117", MIDI_CONTROLLER_EVENT }, 
  {118, "Anon118", MIDI_CONTROLLER_EVENT }, 
  {119, "Anon119", MIDI_CONTROLLER_EVENT }, 
  {120, "Anon120", MIDI_CONTROLLER_EVENT }, 
  {121, "Reset All Controllers", MIDI_CONTROLLER_EVENT }, 
  {122, "Local Control", MIDI_CONTROLLER_EVENT }, 
  {123, "All Notes Off", MIDI_CONTROLLER_EVENT }, 
  {124, "Omni Off", MIDI_CONTROLLER_EVENT }, 
  {125, "Omni On", MIDI_CONTROLLER_EVENT }, 
  {126, "Mono On (Poly Off)", MIDI_CONTROLLER_EVENT }, 
  {127, "Poly On (Mono Off)", MIDI_CONTROLLER_EVENT } 

General Midi Percussion Names and Pocust Symbols

  { 35, "k", "Kick Drum 2", 0 },
  { 36, "b", "Kick Drum 1", 0 },
  { 37, "rs", "Rimshot", 0, },
  { 38, "s",  "Snare Drum 1", 0 },
  { 39, "hc", "Hand Clap", 0, },
  { 40, "s2", "Snare Drum 2", 0 },
  { 41, "T5", "Low Tom 2", 0 },
  { 42, "h",  "Closed Hi-hat", 0, },
  { 43, "t5", "Low Tom 1", 0 },
  { 44, "hp", "Pedal Hi-hat", 0, },
  { 45, "t4", "Mid Tom 2", 0 },
  { 46, "ho", "Open Hi-hat", 0, },
  { 47, "t3", "Mid Tom 1", 0 },
  { 48, "t2", "High Tom 2", 0 },
  { 49, "C",  "Crash Cymbal 1", 0 },
  { 50, "t1", "High Tom 1", 0 },
  { 51, "R",  "Ride Cymbal 1", 0 },
  { 52, "CC", "Chinese Cymbal", 0, },
  { 53, "Rb", "Ride Bell", 0, },
  { 54, "T",  "Tambourine", 0, },
  { 55, "S",  "Splash Cymbal", 0, },
  { 56, "cb", "Cowbell", 0, },
  { 57, "C2", "Crash Cymbal 2", 0 },
  { 58, "Vs", "Vibra Slap", 0, },
  { 59, "R2", "Ride Cymbal 2", 0 },
  { 60, "Bh", "High Bongo", 0, },
  { 61, "Bl", "Low Bongo", 0, },
  { 62, "Ch", "Mute High Conga", 0, },
  { 63, "Co", "Open High Conga", 0, },
  { 64, "Cl", "Low Conga", 0, },
  { 65, "Th", "High Timbale", 0, },
  { 66, "Tl", "Low Timbale", 0, },
  { 67, "Ah", "High Agogo", 0, },
  { 68, "Al", "Low Agogo", 0, },
  { 69, "Ca", "Cabasa", 0, },
  { 70, "M",  "Maracas", 0, },
  { 71, "Ws", "Short Whistle", 0, },
  { 72, "Wl", "Long Whistle", 0, },
  { 73, "Gs", "Short Guiro", 0, },
  { 74, "Gl", "Long Guiro", 0, },
  { 75, "Cv", "Claves", 0, },
  { 76, "Kh", "High Wood Block", 0, },
  { 77, "Kl", "Low Wood Block", 0, },
  { 78, "Um", "Mute Cuica", 0, },
  { 79, "Uo", "Open Cuica", 0, },
  { 80, "Tm", "Mute Triangle", 0, },
  { 81, "To",  "Open Triangle", 0, },
  { 82, "",   "Animals", 0, },
  { 83, "",   "SFX", 0, },
  { 84, "",   "Dontknow", 0, },
  { 85, "Ss", "Shaker Short", 0, }