Time to read: about 3 minutes.
Windows 7 64 Bit Debugging
- RME: 10 MIDI device limit. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32 - Remove all midi, midi1, midi2 and reinstall all drivers
- Verify that registry key HKLM\SYSTEM\ControlSet001\Control\Class\4D36E96C-E325-11CE-BFC1-08002BE10318 has a Multi-String Value "UpperFilters" has data "ksthunk"; add it if not.
- Microsoft support here
- M-Audio MIDI Fix - Windows MIDI utility to clean out uplicate installed MIDI devices for PCI and USB interfaces. Windows has a limit to the number of device drivers installed, once that number has been exceeded new installations will result in the device MIDI port not showing up in the Device Manager. This is useful for Windows 7 64 bit, and it worked.
- set devmgr_show_nonpresent_devices=1
start Devmgmt.msc
This opens device manager, you then set "show hidden devices" under view.
With all your actual devices connected & powered up - Drivers that are installed but not loaded show up lighter than those that are loaded & can be deleted.
Reference
MIDI Manufacturers Association
Behringer FCB1010 | 12 |
Roland Sonic Cell | 17 |
Roland HPD-15 | 18 |
My MIDI Channel Assignments
(extrapolated from common MIDI channel assignments)
Channel | Instrument |
---|---|
1 | Piano |
2 | Bass |
3 | Left hand / accompaniment |
4 | Right hand / melody |
5 | Handsonic Melo 1 • Secondary Accompaniment Instrument (harmony) |
6 | Instrument Handsonic Melo 2 • Secondary Melodic |
7 | |
8 | |
9 | |
10 | Handsonic pads • Drums |
11 | Handsonic Perc 1 |
12 | Handsonic Perc 2 |
13 | |
14 | |
15 | |
16 | |
17 | |
18 |
General MIDI Patch Settings
Program # | Instrument Group |
---|---|
1-8 | Piano |
9-16 | Chromatic Percussion |
17-24 | Organ |
25-32 | Guitar |
33-40 | Bass |
41-48 | Strings |
49-56 | Ensemble |
57-64 | Brass |
65-72 | Reed |
73-80 | Pipe |
81-88 | Synth lead |
89-96 | Synth pad |
97-104 | Synth effects |
105-112 | Ethnic |
113-120 | Percussive |
121-128 | Sound effects |
Controller numbers 121-127 are reserved for Channel Mode messages. These include:
- Reset all controllers
- Local control
- All Notes Off
- MIDI Mode messages
Controller number zero (with 32 as the LSB) is defined as the Bank Select.
Program Number | Instrument Name | Program Number | Instrument Name |
---|---|---|---|
1 | Acoustic Grand Piano | 65 | Soprano Sax |
2 | Bright Acoustic Piano | 66 | Alto Sax |
3 | Electric Grand Piano | 67 | Tenor Sax |
4 | Honky-tonk Piano | 68 | Baritone Sax |
5 | Electric Piano 1 | 69 | Oboe |
6 | Electric Piano 2 | 70 | English Horn |
7 | Harpsichord | 71 | Bassoon |
8 | Clavi | 72 | Clarinet |
9 | Celesta | 73 | Piccolo |
10 | Glockenspiel | 74 | Flute |
11 | Music Box | 75 | Recorder |
12 | Vibraphone | 76 | Pan Flute |
13 | Marimba | 77 | Blown Bottle |
14 | Xylophone | 78 | Shakuhachi |
15 | Tubular Bells | 79 | Whistle |
16 | Dulcimer | 80 | Ocarina |
17 | Drawbar Organ | 81 | Lead 1 (square) |
18 | Percussive Organ | 82 | Lead 2 (sawtooth) |
19 | Rock Organ | 83 | Lead 3 (calliope) |
20 | Church Organ | 84 | Lead 4 (chiff) |
21 | Reed Organ | 85 | Lead 5 (charang) |
22 | Accordion | 86 | Lead 6 (voice) |
23 | Harmonica | 87 | Lead 7 (fifths) |
24 | Tango Accordion | 88 | Lead 8 (bass + lead) |
25 | Acoustic Guitar (nylon) | 89 | Pad 1 (new age) |
26 | Acoustic Guitar (steel) | 90 | Pad 2 (warm) |
27 | Electric Guitar (jazz) | 91 | Pad 3 (polysynth) |
28 | Electric Guitar (clean) | 92 | Pad 4 (choir) |
29 | Electric Guitar (muted) | 93 | Pad 5 (bowed) |
30 | Overdriven Guitar | 94 | Pad 6 (metallic) |
31 | Distortion Guitar | 95 | Pad 7 (halo) |
32 | Guitar harmonics | 96 | Pad 8 (sweep) |
33 | Acoustic Bass | 97 | FX 1 (rain) |
34 | Electric Bass (finger) | 98 | FX 2 (soundtrack) |
35 | Electric Bass (pick) | 99 | FX 3 (crystal) |
36 | Fretless Bass | 100 | FX 4 (atmosphere) |
37 | Slap Bass 1 | 101 | FX 5 (brightness) |
38 | Slap Bass 2 | 102 | FX 6 (goblins) |
39 | Synth Bass 1 | 103 | FX 7 (echoes) |
40 | Synth Bass 2 | 104 | FX 8 (sci-fi) |
41 | Violin | 105 | Sitar |
42 | Viola | 106 | Banjo |
43 | Cello | 107 | Shamisen |
44 | Contrabass | 108 | Koto |
45 | Tremolo Strings | 109 | Kalimba |
46 | Pizzicato Strings | 110 | Bag pipe |
47 | Orchestral Harp | 111 | Fiddle |
48 | Timpani | 112 | Shanai |
49 | String Ensemble 1 | 113 | Tinkle Bell |
50 | String Ensemble 2 | 114 | Agogo |
51 | SynthStrings 1 | 115 | Steel Drums |
52 | SynthStrings 2 | 116 | Woodblock |
53 | Choir Aahs | 117 | Taiko Drum |
54 | Voice Oohs | 118 | Melodic Tom |
55 | Synth Voice | 119 | Synth Drum |
56 | Orchestra Hit | 120 | Reverse Cymbal |
57 | Trumpet | 121 | Guitar Fret Noise |
58 | Trombone | 122 | Breath Noise |
59 | Tuba | 123 | Seashore |
60 | Muted Trumpet | 124 | Bird Tweet |
61 | French Horn | 125 | Telephone Ring |
62 | Brass Section | 126 | Helicopter |
63 | SynthBrass 1 | 127 | Applause |
64 | SynthBrass 2 | 128 | Gunshot |
If you would like to take a MIDI file of one of your performances and share it with others then you will want to follow the basic rules of General MIDI, usually referred to as GM or GM2, which is short for General MIDI 2.
Just about any keyboard, digital piano, or organ made over the past couple of years will be GM aware and more than likely will be GM2 capable. To verify that your keyboard supports GM or GM2 first, look in your owner's manual. You should also be able to find the GM or GM2 logos on your keyboard.
Both GM and GM2 formats are nothing more than a standard that allows any piece of equipment displaying the GM or GM2 logo to understand and share data in those formats. That means if you record a song and you select an Acoustic Bass, Piano and Standard Drum Set, you can expect the file to play back on any GM/GM2 instrument with the same instruments - Acoustic Bass, Piano and Standard Drum Set. While the sound quality of those instruments may vary from vendor to vendor, you can expect them to be reasonably close.
General MIDI, created back in 1991 is still in use today. There are 128 instruments in the General MIDI patch map. The instruments are grouped into various instrument families.
Program Number | Family Name | Program Number | Family Name |
---|---|---|---|
1-8 | Piano | 65-72 | Reed |
9-16 | Chromatic Percussion | 73-80 | Pipe |
17-24 | Organ | 81-88 | Synth Lead |
25-32 | Guitar | 89-96 | Synth Pad |
33-40 | Bass | 97-104 | Synth Effects |
41-48 | Strings | 105-112 | Ethnic |
49-56 | Ensemble | 113-120 | Percussive |
57-64 | Brass | 121-128 | Sound Effects |
A break out of the instruments available:
Program Number | Instrument Name | Program Number | Instrument Name |
---|---|---|---|
1 | Acoustic Grand Piano | 65 | Soprano Sax |
2 | Bright Acoustic Piano | 66 | Alto Sax |
3 | Electric Grand Piano | 67 | Tenor Sax |
4 | Honky-tonk Piano | 68 | Baritone Sax |
5 | Electric Piano 1 | 69 | Oboe |
6 | Electric Piano 2 | 70 | English Horn |
7 | Harpsichord | 71 | Bassoon |
8 | Clavi | 72 | Clarinet |
9 | Celesta | 73 | Piccolo |
10 | Glockenspiel | 74 | Flute |
11 | Music Box | 75 | Recorder |
12 | Vibraphone | 76 | Pan Flute |
13 | Marimba | 77 | Blown Bottle |
14 | Xylophone | 78 | Shakuhachi |
15 | Tubular Bells | 79 | Whistle |
16 | Dulcimer | 80 | Ocarina |
17 | Drawbar Organ | 81 | Lead 1 (square) |
18 | Percussive Organ | 82 | Lead 2 (sawtooth) |
19 | Rock Organ | 83 | Lead 3 (calliope) |
20 | Church Organ | 84 | Lead 4 (chiff) |
21 | Reed Organ | 85 | Lead 5 (charang) |
22 | Accordion | 86 | Lead 6 (voice) |
23 | Harmonica | 87 | Lead 7 (fifths) |
24 | Tango Accordion | 88 | Lead 8 (bass + lead) |
25 | Acoustic Guitar (nylon) | 89 | Pad 1 (new age) |
26 | Acoustic Guitar (steel) | 90 | Pad 2 (warm) |
27 | Electric Guitar (jazz) | 91 | Pad 3 (polysynth) |
28 | Electric Guitar (clean) | 92 | Pad 4 (choir) |
29 | Electric Guitar (muted) | 93 | Pad 5 (bowed) |
30 | Overdriven Guitar | 94 | Pad 6 (metallic) |
31 | Distortion Guitar | 95 | Pad 7 (halo) |
32 | Guitar harmonics | 96 | Pad 8 (sweep) |
33 | Acoustic Bass | 97 | FX 1 (rain) |
34 | Electric Bass (finger) | 98 | FX 2 (soundtrack) |
35 | Electric Bass (pick) | 99 | FX 3 (crystal) |
36 | Fretless Bass | 100 | FX 4 (atmosphere) |
37 | Slap Bass 1 | 101 | FX 5 (brightness) |
38 | Slap Bass 2 | 102 | FX 6 (goblins) |
39 | Synth Bass 1 | 103 | FX 7 (echoes) |
40 | Synth Bass 2 | 104 | FX 8 (sci-fi) |
41 | Violin | 105 | Sitar |
42 | Viola | 106 | Banjo |
43 | Cello | 107 | Shamisen |
44 | Contrabass | 108 | Koto |
45 | Tremolo Strings | 109 | Kalimba |
46 | Pizzicato Strings | 110 | Bag pipe |
47 | Orchestral Harp | 111 | Fiddle |
48 | Timpani | 112 | Shanai |
49 | String Ensemble 1 | 113 | Tinkle Bell |
50 | String Ensemble 2 | 114 | Agogo |
51 | SynthStrings 1 | 115 | Steel Drums |
52 | SynthStrings 2 | 116 | Woodblock |
53 | Choir Aahs | 117 | Taiko Drum |
54 | Voice Oohs | 118 | Melodic Tom |
55 | Synth Voice | 119 | Synth Drum |
56 | Orchestra Hit | 120 | Reverse Cymbal |
57 | Trumpet | 121 | Guitar Fret Noise |
58 | Trombone | 122 | Breath Noise |
59 | Tuba | 123 | Seashore |
60 | Muted Trumpet | 124 | Bird Tweet |
61 | French Horn | 125 | Telephone Ring |
62 | Brass Section | 126 | Helicopter |
63 | SynthBrass 1 | 127 | Applause |
64 | SynthBrass 2 | 128 | Gunshot |
In the case of the percussion sounds, each percussion sound will be located at the same note location. For example, note number 35 would be the bass drum. When you play note 35 on MIDI channel 10, and you are in GM mode, you will always hear bass drum.
Note Number | Percussion Sound | Note Number | Percussion Sound |
---|---|---|---|
35 | Acoustic Bass Drum | 59 | Ride Cymbal 2 |
36 | Bass Drum 1 | 60 | Hi Bongo |
37 | Side Stick | 61 | Low Bongo |
38 | Acoustic Snare | 62 | Mute Hi Conga |
39 | Hand Clap | 63 | Open Hi Conga |
40 | Electric Snare | 64 | Low Conga |
41 | Low Floor Tom | 65 | High Timbale |
42 | Closed Hi Hat | 66 | Low Timbale |
43 | High Floor Tom | 67 | High Agogo |
44 | Pedal Hi-Hat | 68 | Low Agogo |
45 | Low Tom | 69 | Cabasa |
46 | Open Hi-Hat | 70 | Maracas |
47 | Low-Mid Tom | 71 | Short Whistle |
48 | Hi-Mid Tom | 72 | Long Whistle |
49 | Crash Cymbal 1 | 73 | Short Guiro |
50 | High Tom | 74 | Long Guiro |
51 | Ride Cymbal 1 | 75 | Claves |
52 | Chinese Cymbal | 76 | Hi Wood Block |
53 | Ride Bell | 77 | Low Wood Block |
54 | Tambourine | 78 | Mute Cuica |
55 | Splash Cymbal | 79 | Open Cuica |
56 | Cowbell | 80 | Mute Triangle |
57 | Crash Cymbal 2 | 81 | Open Triangle |
58 | Vibraslap |
Although you have access to 128 instruments in General MIDI mode, you will only have access to one drum kit, the standard drum kit.
GM2 or General MIDI 2 goes further. Introduced in 1999 as an extension to the original GM format, GM2 allows both MIDI channels 10 and 11 for percussion parts along with the very important MIDI bank change command.
Let's go back to the Bass Drum example. In General MIDI, we mentioned that you could only access the standard drum kit. You probably have multiple drum set on your instrument. Depending on the type of music you are performing, selecting the correct drum set can and make or break the performance. To access a different drum set you need to issue a bank change command along with the program number of the desired drum set. In GM2 mode, nine drum kits are available.
Program Number | Kit |
---|---|
0 | Standard Set |
1 | Room Set |
2 | Power Set |
3 | Electric Set |
4 | Analog Set |
5 | Jazz Set |
6 | Brush Set |
7 | Orchestra Set |
8 | SFX Set |
The same thing is true for your instrument patches. You will be able to select additional banks of instruments by using the bank select command. In GM2, the number of instruments you will have access to grows to 256 instruments compared to only 128 in GM mode. The additional instruments fall under the same instrument families found in GM. For example, in the piano family you will find the addition of Detuned Electric Piano located in Bank 1 Program Number 5 and Detuned Electric Piano2 located in Bank 1 Program Number 6. This is in addition to the Electric Piano 1 and Electric Piano 2 piano offered in GM mode, which are located in Bank 0 in the same program number locations (5 and 6).
To summarize, GM2 files will offer a wider palette of sounds and supporting effects, along with additional control features allowing more editing of the final musical performance.
MIDI Controller Numbers (CC#)
Decimal | Hex | Controller Name |
0 | 00h | Bank Select (Controller # 32 is more commonly used) |
1 | 01h | Modulation Wheel |
2 | 02h | Breath Contoller |
3 | 03h | Undefined |
4 | 04h | Foot Controller |
5 | 05h | Portamento Time |
6 | 06h | Data Entry MSB |
7 | 07h | Main Volume |
8 | 08h | Balance |
9 | 09h | Undefined |
10 | 0Ah | Pan |
11 | 0Bh | 0Ch |
12 | 0Ch | Effect Control 1 |
13 | 0Dh | Effect Control 2 |
14-15 | 0E-0Fh | Undefined |
16-19 | 10-13h | General Purpose Controllers (Nos. 1-4) |
20-31 | 14-1Fh | Undefined |
32-63 | 20-3Fh | LSB for Controllers 0-31 (rarely implemented) |
64 | 40h | Damper Pedal (Sustain) [Data Byte of 0-63=0ff, 64-127=On] Also used for tap tempo |
65 | 41h | Portamento |
66 | 42h | Sostenuto |
67 | 43h | Soft Pedal |
68 | 44h | Legato Footswitch |
69 | 45h | Hold 2 |
70 | 46h | Sound Controller 1 (default: Sound Variation) |
71 | 47h | Sound Controller 2 (default: Timbre/Harmonic Content) |
72 | 48h | Sound Controller 3 (default: Release Time) |
73 | 49h | Sound Controller 4 (default: Attack Time) |
74 | 4Ah | Sound Controller 5 (default: Brightness) |
75-79 | 4B-4Fh | Sound Controller 6-10 (no defaults) |
80-83 | 50-53h | General Purpose Controllers (Nos. 5-8) |
84 | 54h | Portamento Control |
85-90 | 55-5Ah | Undefined |
91 | 5Bh | Effects 1 Depth (previously External Effects Depth) |
92 | 5Ch | Effects 2 Depth (previously Tremolo Depth) |
93 | 5Dh | Effects 3 Depth (previously Chorus Depth) |
94 | 5Eh | Effects 4 Depth (previously Detune Depth) |
95 | 5Fh | Effects 5 Depth (previously Phaser Depth) |
96 | 60h | Data Increment |
97 | 61h | Data Decrement |
98 | 62h | Non-Registered Parameter Number LSB |
99 | 63h | Non-Registered Parameter Number LSB |
100 | 64h | Registered Parameter Number LSB |
101 | 65h | Registered Parameter Number MSB |
102-120 | 66-78h | Undefined |
Channel Mode Messages | ||
121 | 79h | Reset All Controllers |
122 | 7Ah | Local Control |
123 | 7Bh | All Notes Off |
124 | 7Ch | Omni Off |
125 | 7Dh | Omni On |
126 | 7Eh | Mono On (Poly Off) |
127 | 7Fh | Poly On (Mono Off) |