lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

What are "transposing drum notes"?


From: David Kastrup
Subject: What are "transposing drum notes"?
Date: Fri, 21 Jan 2022 14:54:49 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

The following stuff is in drumpitch-init.ly

drumPitchNames:
   (ua . oneup)
   (ub . twoup)
   (uc . threeup)
   (ud . fourup)
   (ue . fiveup)
   (da . onedown)
   (db . twodown)
   (dc . threedown)
   (dd . fourdown)
   (de . fivedown)

midiDrumPitches:
   ;; "transposing" pitches:
   (oneup . ,(ly:make-pitch 0 1 NATURAL))
   (twoup . ,(ly:make-pitch 0 2 NATURAL))
   (threeup . ,(ly:make-pitch 0 3 NATURAL))
   (fourup . ,(ly:make-pitch 0 4 NATURAL))
   (fiveup . ,(ly:make-pitch 0 5 NATURAL))
   (onedown . ,(ly:make-pitch -1 6 NATURAL))
   (twodown . ,(ly:make-pitch -1 5 NATURAL))
   (threedown . ,(ly:make-pitch -1 4 NATURAL))
   (fourdown . ,(ly:make-pitch -1 3 NATURAL))
   (fivedown . ,(ly:make-pitch -1 2 NATURAL))

These have been added apparently right from the start, have never been
used, have never been documented and mess up the percussion tables with
nonsensical entries.

The only conceivable reason I can think of is for use in connection with
\rest .  However, there is no example that does so.  That is not exactly
surprising since as far as I can tell with a cursory search, the grammar
never once allowed \rest to be used with drum types and midiDrumPitches
is not used for mapping staff positions anyway.

With the very minor exception of a small timpani set in the orchestral
drum kit (which LilyPond does not actually offer any support for), MIDI
percussion in channel 10 (which is what the DrumStaff works with) cannot
in any sensible manner be considered pitched or transposable.

One might somehow think that those pitches are supposed to be used for
defining notehead position for actual drum types, but the range is
limited and the all-important neutral position has no representative.

Unless someone comes up with a really convincing rationale and
supporting documentation and/or examples of actual previous use, I
propose we scrap the whole bunch without replacement.

-- 
David Kastrup



reply via email to

[Prev in Thread] Current Thread [Next in Thread]