I'm getting the impression that the answer to this is probably no, but I'm wondering if there is any standard for writing drum tracks in MIDI format? For example, I downloaded a MIDI file for a (rock) song I want to create a vocal backing track for and applied the built-in preset drum kit to the drum track (this is with LMMS in Linux). However, the resulting sounds didn't seem to resemble what I would expect to be coming from a real drum kit.

The problem seems to be incompatible mapping between the 'piano' keys and the drum sounds. So, I'm wondering if there is any official/unofficial standard for how drum/percussion tracks should be represented in MIDI files? For example, which drums/cymbals should be mapped to which notes?

If the answer is 'yes', then perhaps I just downloaded a bad MIDI file. However, if the answer is 'no', then I'm guessing my only option is to figure out which notes on the MIDI track correspond to which drums/cymbals and re-map the sampled drum sounds to those notes? (which means I would have to do that over again for every MIDI drum track that I download)

Or is there any simpler way to do this?


Two of the most common drum maps are GM - General Midi - & XG or GS which were Yamaha & Roland standards, I think eventually rolled together into GM2.

General Midi Drum map
Source: Midi Association GM1 Sound Set

Key#    Drum Sound

35        Acoustic Bass Drum    
36        Bass Drum 1    
37        Side Stick    
38        Acoustic Snare    
39        Hand Clap    
40        Electric Snare    
41        Low Floor Tom    
42        Closed Hi Hat    
43        High Floor Tom    
44        Pedal Hi-Hat    
45        Low Tom    
46        Open Hi-Hat    
47        Low-Mid Tom    
48        Hi-Mid Tom    
49        Crash Cymbal 1    
50        High Tom    
51        Ride Cymbal 1    
52        Chinese Cymbal    
53        Ride Bell    
54        Tambourine    
55        Splash Cymbal    
56        Cowbell    
57        Crash Cymbal 2    
58        Vibraslap    
59        Ride Cymbal 2    
60        Hi Bongo    
61        Low Bongo    
62        Mute Hi Conga    
63        Open Hi Conga    
64        Low Conga    
65        High Timbale    
66        Low Timbale    
67        High Agogo    
68        Low Agogo    
69        Cabasa    
70        Maracas    
71        Short Whistle    
72        Long Whistle    
73        Short Guiro    
74        Long Guiro    
75        Claves    
76        Hi Wood Block    
77        Low Wood Block    
78        Mute Cuica    
79        Open Cuica    
80        Mute Triangle    
81        Open Triangle

The GM2 Spec is available from them too - but they want you to register to download - https://www.midi.org/specifications-old/item/general-midi-2

XG Drum map
Source: PDF linked at the bottom of https://en.wikipedia.org/wiki/Yamaha_XG

enter image description here

Compulsory XKCD link on 'standards'.

  • Thanks very much. As a follow-up question: what do the 'key #'s for the GM set correspond to? Are those keys on a specific synth/sampler model? Do they happen to correspond to any particular pitch notes? I'll look again at the mappings for the drum module I was using and the MIDI file and see if either is following the XG map. If so, perhaps I can find a replacement for the other one that also follows it, to make things easier :-) – Time4Tea Jun 8 '18 at 12:12
  • 1
    Midi Note numbers - inspiredacoustics.com/en/… – Tetsujin Jun 8 '18 at 12:39
  • Ok, thank you. I wasn't familiar with this. – Time4Tea Jun 8 '18 at 12:55

here's some stuff I wrote up about that on my personal website: http://pianocheetah.com/midi/drum.html

A synthesizer can remap sounds, but these are the "standard"-EST mappings that I've found (after a lot of research).

I guess I should paste it in here. But I don't know how the formatting will turn out :( Here goes...

   2C  Kick\Kick BassDrum1Electric     1B  Kick\Kik2 BassDrum2Acoustic
   2D  Snar\Snar Snare1Acoustic        2E  Snar\Snr2 Snare2Electric
   2Gb HHat\HHCl HiHatClosed           2Ab HHat\HHPd HiHatPedal
   2Bb HHat\HHOp HiHatOpen             3Eb Cymb\Ride CymbalRide1(Edge)
   3B  Cymb\Rid2 CymbalRide2           3F  Cymb\RdBl CymbalRideBell
   3Db Cymb\Cras CymbalCrash1          3A  Cymb\Cra2 CymbalCrash2
   3G  Cymb\Spla CymbalSplash          3E  Cymb\Chin CymbalChinese
   2F  Toms\TFlL TomFloorLo(1)         2G  Toms\TFlH TomFloorHi(2)
   2A  Toms\TomL TomLo(3)              2B  Toms\TMdL TomMidLo(4)
   3C  Toms\TMdH TomMidHi(5)           3D  Toms\TomH TomHi(6)
   3Ab Misc\CowB Cowbell               3Gb Misc\Tamb Tambourine
   5Ab Misc\TriM TriangleMute          5A  Misc\TriO TriangleOpen
   5B  Misc\BelJ BellJingle(GS)        6C  Misc\BelT BellTree(GS)
   1Eb Misc\HiQu HighQ(GS)             1G  Misc\Stik Sticks(GS)
   2Db Misc\StkS SideStick             2Eb Misc\Clap HandClap
   1E  Misc\Slap Slap(GS)              3Bb Misc\Vbra Vibraslap
   5Bb Misc\Shak Shaker(GS)            6Db Misc\Cast Castanets(GS)
   1F  Misc\ScPs ScratchPush(GS)       1Gb Misc\ScPl ScratchPull(GS)
   1Ab Misc\MtSq MetronomeSquare(GS)   1A  Misc\MtCl MetronomeClick(GS)
   1Bb Misc\MtBl MetronomeBell(GS)     4Db Latn\BonL BongoLo
   4C  Latn\BonH BongoHi               4E  Latn\ConL CongaLo
   4Eb Latn\ConO CongaHiOpen           4D  Latn\ConM CongaHiMute
   4Gb Latn\TimL TimbaleLo             4F  Latn\TimH TimbaleHi
   4Ab Latn\AgoL AgogoLo               4G  Latn\AgoH AgogoHi
   4A  Latn\Caba Cabasa                4Bb Latn\Mara Maracas
   5C  Latn\WhiL WhistleLong           4B  Latn\WhiS WhistleShort
   5D  Latn\GuiL GuiroLong             5Db Latn\GuiS GuiroShort
   5Eb Latn\Clav Claves                5F  Latn\BlkL WoodBlockLo
   5E  Latn\BlkH WoodBlockHi           5G  Latn\CuiL CuicaLo
   5Gb Latn\CuiH CuicaHi               6D  Latn\SurM SurdoMute(GS)
   6Eb Latn\SurO SurdoOpen(GS)
  • Thanks for posting this. I will take a look at my drum module and see if it has a similar mapping. So, to what extent is this a 'standard'? Is this mapping 'generally accepted' for hardware/software drum samplers? If so, perhaps I can find a better MIDI file somewhere that respects that mapping (to save me having to re-map). – Time4Tea Jun 7 '18 at 21:42
  • 1
    Would be interesting to know what that map is from. It's not one I know, though at a glance it starts out a bit like GM. – Tetsujin Jun 8 '18 at 5:24
  • 1
    well, i came up with the map starting from the general midi map. Then adding the XG and GS extensions and throwing out the XG and GS extensions that were rarely used. Kind of a hybrid. But there is no one definitive standard. So there ya go... – Stephen Hazel Jun 8 '18 at 15:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.