Standardized MIDI map schema

Moderators: MattKingUSA, khz, muldjord, deva

Post Reply
Basslint
Established Member
Posts: 1511
Joined: Sun Jan 27, 2019 2:25 pm
Location: Italy
Has thanked: 382 times
Been thanked: 298 times

Standardized MIDI map schema

Post by Basslint »

Hello,

Each DrumGizmo kit is different, but a well defined standard for MIDI maps might make life easier for both kit-makers (who don't have to come up with their own layouts) and users, who can just swap different drumkits without having to modify their MIDI sequences. This kind of auditioning of drum samples is a very common workflow, and can only make DrumGizmo more accessible.

The General MIDI standard is already well established, and could be a starting point. It only defines a set number of different sounds for the same hits, however (e.g. two bass drum kicks), and would need to be extended.

What do you think about it?
The community of believers was of one heart and mind, and no one claimed that any of his possessions was his own, but they had everything in common. [Acts 4:32]

Please donate time (even bug reports) or money to libre software 🎁

Jam on openSUSE + GeekosDAW!
12strings2hands
Established Member
Posts: 29
Joined: Tue Jan 10, 2017 5:28 pm
Has thanked: 4 times
Been thanked: 4 times

Re: Standardized MIDI map schema

Post by 12strings2hands »

I've been using DrumGizmo a lot and I like your idea, I think. There are actually 127 midi notes available, true? Most of the percussion maps start with the Kick at 35 and go up, sometimes somewhat randomly to, for example in the DRS kit, note 76.
I'm about to make my own 'unified' DrumGizmo map of the 4 kits on their site. It might be as easy as revising the MIDImap files for each kit. Maybe for a start - cluster Toms 1 - 15, Snares 16 - 30, Kicks 31 - 40, Cymbals ( I want a lot of them) 41 - 60

I think that all you need to do is change the midi number in the midimap.xml file that comes with each kit.
Basslint
Established Member
Posts: 1511
Joined: Sun Jan 27, 2019 2:25 pm
Location: Italy
Has thanked: 382 times
Been thanked: 298 times

Re: Standardized MIDI map schema

Post by Basslint »

12strings2hands wrote:I've been using DrumGizmo a lot and I like your idea, I think. There are actually 127 midi notes available, true? Most of the percussion maps start with the Kick at 35 and go up, sometimes somewhat randomly to, for example in the DRS kit, note 76.
I'm about to make my own 'unified' DrumGizmo map of the 4 kits on their site. It might be as easy as revising the MIDImap files for each kit. Maybe for a start - cluster Toms 1 - 15, Snares 16 - 30, Kicks 31 - 40, Cymbals ( I want a lot of them) 41 - 60

I think that all you need to do is change the midi number in the midimap.xml file that comes with each kit.
Yes, it's not a programming effort, more a matter of publishing a document which describes a common mapping standard for all drumkits.
The community of believers was of one heart and mind, and no one claimed that any of his possessions was his own, but they had everything in common. [Acts 4:32]

Please donate time (even bug reports) or money to libre software 🎁

Jam on openSUSE + GeekosDAW!
chaot4
Established Member
Posts: 61
Joined: Sat Apr 16, 2016 9:59 am
Been thanked: 1 time

Re: Standardized MIDI map schema

Post by chaot4 »

We tried to be somewhat consistent, but the drumkits were created over several years and then consistency wasn't possible anymore for the later kits due to "wrong" choices in the first one(s). Fortunately, it is very easy to publish and use new midi maps. However, unfortunately, there is no suitable standard (as far as I know) for drumkits; General MIDI just doesn't cover the kind of drumkits we have with a lot of cymbals etc.

As far as making our own standard, I think we should as much as possible consider already existing habits/quasi-standards. So, General MIDI is probably a good starting point, but it is not clear which of the drums we can "substitute", as it is not clear what kind of drumkits will be created in the future, so we don't know which drums will be unused in all the future drumkits.

Is anyone aware of a good standard which we could use with all our already existing kits?
12strings2hands
Established Member
Posts: 29
Joined: Tue Jan 10, 2017 5:28 pm
Has thanked: 4 times
Been thanked: 4 times

Re: Standardized MIDI map schema

Post by 12strings2hands »

Well, first off, let me say that the Drum Gizmo kits are spectacular samples, and it is a wonderful piece of software to use, as I do, recording and mixing in Ardour.
I have combined midimaps for 3 of the kits so far (attached). I found it too difficult to incorporate with GM standard. The standard fits and entire Kkit into what, 30 or 40 numbers? What I did was to put all the 'skins' from 0 - 39, then cymbals from 40 - 127
Like this:
Toms start at 0, snares start at 16, Kicks at 35,
HiHats 40, Crash 61, Rides at 72, China 90, Splash 100
Anyone with better suggestions please come quick before I do more kits :D

<?xml version="1.0" encoding="UTF-8"?>
<!-- KitName CrocellKit -->
<midimap>
<map note="102" instr="SplashR"/>
<map note="101" instr="SplashL"/>
<map note="92" instr="ChinaR"/>
<map note="91" instr="ChinaL"/>
<map note="86" instr="RideRBell"/>
<map note="72" instr="RideR"/>
<map note="66" instr="CrashRStopped"/>
<map note="65" instr="CrashLStopped"/>
<map note="64" instr="CrashRXtra"/>
<map note="62" instr="CrashR"/>
<map note="61" instr="CrashL"/>
<map note="51" instr="HihatOpen"/>
<map note="49" instr="HihatSemiOpen"/>
<map note="46" instr="HihatPedalHit"/>
<map note="45" instr="HihatClosedNoPedal"/>
<map note="44" instr="HihatPedal"/>
<map note="41" instr="HihatClosed"/>
<map note="36" instr="KDrumR"/>
<map note="35" instr="KDrumL"/>
<map note="19" instr="SnareRest"/>
<map note="18" instr="SnareRim"/>
<map note="17" instr="SnareRimShot"/>
<map note="16" instr="Snare"/>
<map note="4" instr="FTom2"/>
<map note="3" instr="FTom1"/>
<map note="2" instr="Tom2"/>
<map note="1" instr="Tom1"/>
</midimap>

<?xml version="1.0" encoding="UTF-8"?>
<!-- KitName MuldjordKit3 -->
<midimap>
<map note="92" instr="China"/>
<map note="86" instr="RideRBell"/>
<map note="85" instr="RideLBell"/>
<map note="72" instr="RideR"/>
<map note="71" instr="RideL"/>
<map note="62" instr="CrashR"/>
<map note="61" instr="CrashL"/>
<map note="51" instr="HihatOpen"/>
<map note="41" instr="HihatClosed"/>
<map note="36" instr="KdrumR"/>
<map note="35" instr="KdrumL"/>
<map note="19" instr="SnareRest"/>
<map note="16" instr="Snare"/>
<map note="4" instr="Tom4"/>
<map note="3" instr="Tom3"/>
<map note="2" instr="Tom2"/>
<map note="1" instr="Tom1"/>
</midimap>
<?xml version="1.0" encoding="UTF-8"?>
<!-- drumkit Name DRS -->
<midimap>
<map note="86" instr="Ride_shank_bell"/>
<map note="84" instr="Ride_tip_bell"/>
<map note="82" instr="Ride_tip_bell_chain"/>
<map note="80" instr="Ride_tip_chain"/>
<map note="78" instr="Ride_rest"/>
<map note="76" instr="Ride_shank"/>
<map note="74" instr="Ride_whisker"/>
<map note="72" instr="Ride_tip"/>
<map note="66" instr="Crash_right_whisker"/>
<map note="65" instr="Crash_left_whisker"/>
<map note="64" instr="Crash_right_tip"/>
<map note="63" instr="Crash_left_tip"/>
<map note="62" instr="Crash_right_shank"/>
<map note="61" instr="Crash_left_shank"/>
<map note="53" instr="Hihat_open_whisker"/>
<map note="52" instr="Hihat_open_tip"/>
<map note="51" instr="Hihat_open"/>
<map note="49" instr="Hihat_semi_open"/>
<map note="47" instr="Hihat_closed_whisker"/>
<map note="45" instr="Hihat_closed_shank"/>
<map note="44" instr="Hihat_foot"/>
<map note="41" instr="Hihat_closed"/>
<map note="36" instr="Kdrum_with_contact"/>
<map note="35" instr="Kdrum_without_contact"/>
<map note="22" instr="Snare_circle_whisker"/>
<map note="21" instr="Snare_whisker"/>
<map note="19" instr="Snare_rest"/>
<map note="18" instr="Snare_rim"/>
<map note="16" instr="Snare"/>
<map note="13" instr="Tom3_whisker"/>
<map note="12" instr="Tom2_whisker"/>
<map note="11" instr="Tom1_whisker"/>
<map note="3" instr="Tom3"/>
<map note="2" instr="Tom2"/>
<map note="1" instr="Tom1"/>
</midimap>
Post Reply