How might I import midi to transcribe drum parts?

I’m sure there’s multiple concepts I need to (re)learn about dorico…
what I want to do is this:
Record midi from my Roland e-drum kit (TD-50X) into Ableton onto a midi track.
Then, I want to take this midi track, and bring it into Dorico so I can essentially transcribe what I played.
I’ve attached a midi clip of what I am getting from Ableton…
C1 is kick
D1 is snare
A#-1 closed hi-hat edge
F#1 closed hi-had top
G#1 hi-hat pedal
D0 open hat edge
A#1 open hat top

My goal is to hopefully transcribe basic beats for now, so I can remember what it is that I am playing as I am working out parts.

MIDI 4.mid (6.2 KB)

When you import your MIDI file into Dorico, you get the chance in the MIDI Import Options dialog to specify the percussion map that should be used to interpret the material in each track. If you set up a percussion map (in Library > Percussion Maps) with the appropriate values, then import your MIDI file into the project that contains your custom percussion map, you should get a good result.

In addition to Daniel’s wise words, you should find that the Roland kit is mostly GM compatible, so try importing with the GM drum kit and then if there any missing then create a copy of the GM percussion map and add your new entries.

Ahh… yes, Percussion Maps…

Though, @dspreadbury - I didn’t see the option at first… had I, I probably would have been a bit better clued in to what to do… took a bit of an expedition to find it.

Hmm… somethings not right. Here’s my result:

Here’s the original midi (file also attached)

Here’s my map:

Here’s import settings:

Using the default Drum Set (Full)

What’s amiss?
MIDI.mid (2.1 KB)

I think everything is out by an octave. Kick and snare should be 36 and 38 rather than 24 and 26. The reason for this confusion is summarised here: Negative keyswitch values? (eg C-1) - #2 by PaulWalmsley


Now, any idea why I’m getting this artifact? The notes were quantized to 1/16T grid.

A bit of a separate topic, but is there a way to get a [---- 6 ----] over those sexytyplets automagically, instead of the two [-- 3 --] brackets?

… and also just noticed… even when I have ‘use single voice’, I’m seeing rests padded where I wouldn’t expect them

here’s the file if it is of any help

TD-50x Percussion Map.dorico (645.8 KB)


  1. why is is the kick (red) not the proper duration in import
  2. why are there extra rests?
  3. How to get [— 6 —] instead of [–3–] on import.

The rests are likely a mismatch between the tuplets in the upper notes and a straight rhythm in the lower notes. Expressing the kit temporarily as separate single-line staves would allow you to correct this.

Hi @Derrek - thx, I understand that… but WHY are they mismatched. As you can see in the image above, the midi of the notes are perfectly aligned/quantized to the grid.

… I’m guessing some bug… either in the Ableton export, or in the Dorico import.

In Dorico it appears that the 1/16th triplet (first and third partial) was interpreted as an 1/8th triplet partial + (1/16th triplet partial + 1/8th) note.

Since the midi imports into Ableton exactly as it was exported… and it appears as expected in Garage Band:

… I’m guessing a Dorico issue?

I’m less concerned in playing the “blame game” and more interested in getting stuff to work. That approach has saved me a lot of time over the years with a variety of programs.

1 Like

@Derrek - I understand what you mean… but my goal here as originally stated is to record what I’m playing and transcribe it. If the software doesn’t do it reliably, then it doesn’t meet my goal. If it is recognized where the problem is (and more specifically what is actually happening), then it can be fixed.
If I had to manually check/fix the transcription, I may as well just write it out manually.

The issue here is that Dorico’s percussion import doesn’t handle this specific scenario very well, where the MIDI has been hard-quantized in a DAW and then you have the triplet pattern split between multiple instruments. Dorico doesn’t know the degree of rhythmic dependence between each component of the drum kit, and so it analyses each component separately. This allows it to detect cases where you have tuplets in (eg) the hi-hats but straight notes for kick and snare. Or different tuplets in each voice. In this case Dorico is trying to avoid ‘incomplete’ tuplets in the snare where only the 3rd note is sounding, since in many other situations this can create a lot of visual noise.

There’s certainly more to do in the future in this area, including better handling of hard-quantized percussion. Could you attach a MIDI file that shows the problem and I can log it for the future?

Thanks, @PaulWalmsley

MIDI.mid (2.1 KB)

Attached the midi file.

By the way… is there a way to modify the MIDI data directly (e.g., in the Play view?) to correct the MIDI durations? I think it may be easier to visually compare the MIDI, than attempting to find/fix anomalies in the Write view. I know I can drag the durations… but how do I ‘fix’ the tuple?

I’m not sure if there’s a way to do this directly from the MIDI Dorico isn’t like a DAW where you are editing the MIDI data directly (and where a notation view is inferred dynamically from the quantized MIDI note positions). It’s really the other way around, where you are editing the notated notes which are stored at fractional positions on within the measure (so tuplets are actually stored precisely as 1/3, 1/5, 8/17, etc). When you drag the playback positions around, you are just setting a playback offset which will be re-applied during playback (so that rhythmic deviations from your performance are preserved).

We do have a ‘Requantize’ function, but this is used to re-quantize a selection using the original MIDI positions and different quantization units. It won’t re-quantize using the current playback offsets.

I’ve been able to fix this specific case: if you have notes that are already quantized then it’s more forgiving about allowing individual notes within 1/16 triplets. The reason that they are disallowed by default is that Dorico has to balance between two often contradictory requirements:

  • Data that has already been quantized: so the user has already made a choice about the tuplet structure
  • Data that has been recorded or imported and hasn’t been quantized: so Dorico has to interpret the data, as it can’t assume it has been played very tightly to the click.

If Dorico had a more naive approach of just snapping notes to the nearest tuplet position then with content that has looser timing you would get a lot of random tuplets that aren’t really present, and that adds a lot of visual noise. Dorico’s logic will only create a tuplet if there is good evidence for it, either because the notes are already quantized and the position is exact, or more than one rhythmic position within the tuplet is populated and the notes are reasonably close to the tuplet grid.

1 Like

How did you fix it? Is this something a user can do, or is it something only a programmer can do?

I’m planning on bringing in MIDI drum tracks in the near future, so I (and I sure others) would like to know.

Doug :slight_smile: