This is an old revision of the document!


Percussion Notation

Objective

Now that I'm learning to play the drums, I find it is not that easy to find a written drum part for a particular song I want to learn. I have many of these songs available as standard MIDI files, and I want to use Rosegarden to turn those into written drum notation I can read while in front of the kit. Any other objectives I achieve in this are secondary to this primary goal. Furthermore, I am focused on functionality much more than ease of use or shiny looks, and this is likely to be hacky rather than pretty.

Clef

In this implementation, the two-bar clef will be effectively the same as the treble clef. This is purely for my own convenience, as I think in treble clef.

Handling Polyphony

Drum kit notation is fundamentally polyphonic notation. While the beats sometimes line up in such a way that split-and-tied chords would work, I am going to take an approach that requires drum parts to be polyphonic 100% of the time, with separate segments for each type of drum played.

Drum Splitter

Toward the ends of converting existing parts to written notation and of handling polyphony, the first thing I need to implement is a drum-oriented split function.

The function shall:

  • for each pitch 0 to 127
  • search the segment for this pitch
  • if the pitch is found, create a new segment for this pitch, taking the label from the percussion key map
  • for known pitches (eg. snare) transpose the segment such that the pitch sounds suitably and the note is rendered at the correct height (eg. middle space C)
  • for known pitches (eg. closed hi-hat) notate using correct note heads automatically

etc.?

meh… I think I'll implement a rudimentary splitter to get started, and see where it all goes once my sleeves are rolled up. I don't have a firm plan for a number of issues, including:

  • hi-hat, crash, ride, and snare can all trigger a variety of different samples via different pitches, and all but a handful of these pitches need to be notated on the same line
  • our handling of rests in polyphonic parts is really bad, and this drum stuff will showcase the absolute worst of it, absolutely all the time, and this needs gone through and sorted out
 
 
dev/percussion.1451898042.txt.gz · Last modified: 2022/05/06 16:07 (external edit)
Recent changes RSS feed Creative Commons License Valid XHTML 1.0 Valid CSS Driven by DokuWiki