Hi Stefano,

What I want to achieve in the end are different voicings for drum
notation using the same input notes.  The different voicings are
described here:

https://www.onlinedrummer.com/blogs/drum-lessons/introduction-to-voicing-in-drum-notation

 From that web page is a good image showing what the different voicings
look like.  There are 4 songs, each notated in the 3 common voicings.

Thanks, it's clear to me now.

This is an fun, albeit non-trivial problem. It seems to me that the
"natural" representation of a drum pattern would be something akin to
ASCII drum tabs:

C |----------------|----------------|----------------|----------x-----|
R |x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x---x-x-|
S |----o--o-o--o--o|----o--o-o--o--o|----o--o-o----o-|-o--o--o-o----o-|
B |o-o-------oo----|o-o-------oo----|o-o-------o-----|--oo------o-----|

This information should than be combined into one or two voices, the
latter according to one of several rules (hands vs. feet, cymbals vs.
drums etc.)

What's conceptually easy (and easy to implement) is:

- going from LilyPond voices to a "tabular" representation,
- group the kicks in the tabular representation into voices according to
whichever rule,
- make LilyPond understand a tab notation like the one above.

What's *not* easy is:

- convert a series of zero-time events (kicks, combined kicks) into
musical notation.

The reason is that one would have to define rules about how to represent
any possible constellation of kicks in musical notation, since there are
plenty of possibilites regarding the choice of dots, ties and rests. The
following rhythms are written completely different, yet they are
identical in terms of "kicks":

Which of these notations should be used? (Of course some are more
convenient than others, but there are various reasonable choices.) The
problem isn't made much easier when starting with a given voice-like
musical notation, since when combining multiple voices into one, notes
of a given duration have to be split, leading to the same decision problems.

Lukas

Reply via email to