Sunday, 13 November 2016

A cutting tale

When Drum Score Editor was first imagined, it was to be a drummers score editor, not an adapted music editor. One of the things I grew up with was the concept of dot and cut. I self-taught myself reading and writing music for the guitar from the age of about 10, and about the same time started to learn the side drum.

Written music wasn't a big thing back then, by today's standards it was pretty rough and ready the written scores. I was taught the opposite of a dot is a cut, and that a cut shortens the duration of a note by half it's value.

I was also aware that when you do that it counted the same as if you'd written a note that was the one with another tail or flag on the stem. But a cut note was special, it was a cut note, not a smaller note, in duration terms.

And so despite knowing there's a vaguely inconsistent thing there, I maintained the ability to mark a note as cut in Drum Score Editor. In fact in earlier versions, where the beaming of tails wasn't as complete I believed it was a necessary thing for drummers somehow. This has changed.

By having this complexity in the model inside the software it makes moving things to more advanced levels even more difficult. So from the versions after 2.4, there is no concept of a cut note, simply a cut action, which halves the note value, i.e. a semiquaver, when cut becomes a demisemiquaver. This removes a lot of code complexity when applying all the logic needed to auto beam notes.

The main factors in automatically joining note flags or tails, also known as beaming just to confuse further, are the note value, it's position within the bar, the time signature in effect at the time, whether the note is a beat note, a primary subdivision of the beat (as we tend to single beam those), if there's an irregular group in effect, or multiples thereof. Adding in an artificial "is this note cut" really took this to beyond my abilities to code up!

The one side effect for me in the code was beautify, which relied on knowing the note was cut, to be able to judge the distance along the bar to place the note. It served as a hint because although dotting a note adds half it's value and cutting takes half off the next note, we as humans don't like to see it written as the mathematical representation of that. We like interpretation, and Drum Score Editor does just that. It uses 1.666 rather than 1.5 as the multiplier and shortens the distance for the following cut note. Try it, if you write a score manually, looks too clipped if you follow the mathematical interpretation!

No comments:

Post a Comment