[ << Specialist notation ] | [Top][Contents][Index] | [ General input and output >> ] |
[ < Percussion ] | [ Up : Percussion ] | [ References for percussion > ] |
2.5.1 Common notation for percussion
Rhythmic music is primarily used for percussion and drum notation, but it can also be used to show the rhythms of melodies.
References for percussion | ||
Basic percussion notation | ||
Drum rolls | ||
Pitched percussion | ||
Percussion staves | ||
Custom percussion staves | ||
Ghost notes |
[ << Specialist notation ] | [Top][Contents][Index] | [ General input and output >> ] |
[ < Common notation for percussion ] | [ Up : Common notation for percussion ] | [ Basic percussion notation > ] |
References for percussion
- Some percussion may be notated on a rhythmic staff; this is discussed in Showing melody rhythms and Instantiating new staves.
- MIDI output is discussed in a separate section; please see Creating MIDI output.
See also
Notation Reference: Showing melody rhythms, Instantiating new staves, Creating MIDI output.
Snippets: Percussion.
[ << Specialist notation ] | [Top][Contents][Index] | [ General input and output >> ] |
[ < References for percussion ] | [ Up : Common notation for percussion ] | [ Drum rolls > ] |
Basic percussion notation
Percussion notes may be entered in \drummode
mode, which is
similar to the standard mode for entering notes. The simplest way
to enter percussion notes is to use the \drums
command,
which creates the correct context and entry mode for percussion:
\drums { hihat4 hh bassdrum bd }
This is shorthand for:
\new DrumStaff \drummode { hihat4 hh bassdrum bd }
Each piece of percussion has a full name and an abbreviated name, and both can be used in input files. The full list of percussion note names may be found in Percussion notes.
Note that the normal notation of pitches (such as cis4
) in a
DrumStaff
context will cause an error message. Percussion clefs
are added automatically to a DrumStaff
context but they can also
be set explicitly. Other clefs may be used as well.
\drums { \clef percussion bd4 4 4 4 \clef treble hh4 4 4 4 }
There are a few issues concerning MIDI support for percussion instruments; for details please see Creating MIDI output.
See also
Notation Reference: Creating MIDI output, Percussion notes.
Installed Files: ‘ly/drumpitch-init.ly’.
Snippets: Percussion.
[ << Specialist notation ] | [Top][Contents][Index] | [ General input and output >> ] |
[ < Basic percussion notation ] | [ Up : Common notation for percussion ] | [ Pitched percussion > ] |
Drum rolls
Drum rolls are indicated with three slashes across the stem. For quarter notes or longer the three slashes are shown explicitly, eighth notes are shown with two slashes (the beam being the third), and drum rolls shorter than eighths have one stem slash to supplement the beams. This is achieved with the tremolo notation, as described in Tremolo repeats.
\drums { \time 2/4 sn16 8 16 8 8:32 ~ 8 8 4:32 ~ 4 8 16 16 4 r4 }
Sticking can be indicated by placing a markup for "R"
or "L"
above or below notes, as discussed in
Direction and placement. The staff-padding
property
may be overridden to achieve a pleasing baseline.
\drums { \repeat unfold 2 { sn16^"L" 16^"R" 16^"L" 16^"L" 16^"R" 16^"L" 16^"R" 16^"R" \stemUp sn16_"L" 16_"R" 16_"L" 16_"L" 16_"R" 16_"L" 16_"R" 16_"R" } }
See also
Notation Reference: Tremolo repeats.
Snippets: Percussion.
[ << Specialist notation ] | [Top][Contents][Index] | [ General input and output >> ] |
[ < Drum rolls ] | [ Up : Common notation for percussion ] | [ Percussion staves > ] |
Pitched percussion
Certain pitched percussion instruments (e.g., xylophone, vibraphone, and timpani) are written using normal staves. This is covered in other sections of the manual.
See also
Notation Reference: Creating MIDI output.
Snippets: Percussion.
[ << Specialist notation ] | [Top][Contents][Index] | [ General input and output >> ] |
[ < Pitched percussion ] | [ Up : Common notation for percussion ] | [ Custom percussion staves > ] |
Percussion staves
A percussion part for more than one instrument typically uses a
multiline staff where each position in the staff refers to one
piece of percussion. To typeset the music, the notes must be
interpreted in DrumStaff
and DrumVoice
context.
up = \drummode { crashcymbal4 hihat8 halfopenhihat hh hh hh openhihat } down = \drummode { bassdrum4 snare8 bd r bd sn4 } \new DrumStaff << \new DrumVoice { \voiceOne \up } \new DrumVoice { \voiceTwo \down } >>
The above example shows verbose polyphonic notation. The short polyphonic notation, described in I'm hearing Voices, can also be used. For example,
\new DrumStaff << \drummode { bd4 sn4 bd4 sn4 << { \repeat unfold 16 hh16 } \\ { bd4 sn4 bd4 sn4 } >> } >>
There are also other layout possibilities. To use these, set the
property drumStyleTable
in context DrumVoice
. The
following variables have been predefined:
-
drums-style
This is the default. It typesets a typical drum kit on a five-line staff:
The drum scheme supports six different toms. When there are fewer toms, simply select the toms that produce the desired result. For example, to get toms on the three middle lines you use
tommh
,tomml
, andtomfh
.-
agostini-drums-style
Invented by the French percussionist Dante Agostini in 1965, this notation is commonly employed in France but also elsewhere.
-
weinberg-drums-style
Based on the work of Norman Weinberg, published in his Guidelines for Drumset Notation.
-
timbales-style
This typesets timbales on a two line staff:
-
congas-style
This typesets congas on a two line staff:
-
bongos-style
This typesets bongos on a two line staff:
-
percussion-style
To typeset all kinds of simple percussion on one-line staves:
Custom percussion styles may also be defined, as explained in Custom percussion staves.
See also
Learning Manual: I'm hearing Voices.
Notation Reference: Custom percussion staves.
Installed Files: ‘ly/drumpitch-init.ly’.
Snippets: Percussion.
[ << Specialist notation ] | [Top][Contents][Index] | [ General input and output >> ] |
[ < Percussion staves ] | [ Up : Common notation for percussion ] | [ Ghost notes > ] |
Custom percussion staves
Custom percussion styles may be defined, to which the
drumStyleTable
property may then be set.
Existing notations may be redefined as an association list
where each entry has to be comprised of four items:
a name, the note head style (or default
), an
articulation sign if needed (or #f
if not), and
the note head’s position on the staff. That list must then
be converted into a Scheme hash table, using the
alist->hash-table
function.
#(define mydrums '( (bassdrum default #f -1) (snare default #f 0) (hihat cross #f 1) (halfopenhihat cross halfopen 1) (pedalhihat xcircle stopped 2) (lowtom diamond #f 3))) up = \drummode { hh8 hh hhho hhho hhp4 hhp } down = \drummode { bd4 sn bd toml8 toml } \new DrumStaff \with { drumStyleTable = #(alist->hash-table mydrums) } << \new DrumVoice { \voiceOne \up } \new DrumVoice { \voiceTwo \down } >>
New names may also be added to these custom notations through
the drumPitchNames
variable, that may be redefined as
an association list (or augmented by append
ing a new list
to its existing value, as demonstrated below), but also through
its individual entries. This also makes it possible to define
aliases: alternate input shorthand for some notations.
drumPitchNames = #(append '((leftsnap . sidestick) (rightsnap . ridecymbal)) drumPitchNames) drumPitchNames.ls = #'sidestick drumPitchNames.rs = #'ridecymbal \drums { leftsnap4. rightsnap8 leftsnap4 rightsnap ls8 rs ls rs ls4 rs }
In a similar manner, the drumPitchTable
property
associates a specific pitch (meaning a different instrument
sound, as provided by available MIDI soundfonts) to each
notation. That property needs to be defined as a hash table,
which is again converted from an association list (stored by
default as the midiDrumPitches
variable). Redefining
these associations is achieved as explained above, either by
defining an entire association list or through individual entries.
The following example demonstrates how to create a whole
notation set with its own input syntax, custom notations and
corresponding MIDI output.
drumPitchNames.dbass = #'dbass drumPitchNames.dba = #'dbass % 'db is in use already drumPitchNames.dbassmute = #'dbassmute drumPitchNames.dbm = #'dbassmute drumPitchNames.do = #'dopen drumPitchNames.dopenmute = #'dopenmute drumPitchNames.dom = #'dopenmute drumPitchNames.dslap = #'dslap drumPitchNames.ds = #'dslap drumPitchNames.dslapmute = #'dslapmute drumPitchNames.dsm = #'dslapmute #(define djembe-style '((dbass default #f -2) (dbassmute default stopped -2) (dopen default #f 0) (dopenmute default stopped 0) (dslap default #f 2) (dslapmute default stopped 2))) midiDrumPitches.dbass = g midiDrumPitches.dbassmute = fis midiDrumPitches.dopen = a midiDrumPitches.dopenmute = gis midiDrumPitches.dslap = b midiDrumPitches.dslapmute = ais test = \drummode { dba4 do ds dbm dom dsm } \score { \new DrumStaff \with { \override StaffSymbol.line-count = #3 instrumentName = "Djembé " drumStyleTable = #(alist->hash-table djembe-style) drumPitchTable = #(alist->hash-table midiDrumPitches) } { \time 3/4 \test } \layout {} \midi {} }
See also
Installed Files: ‘ly/drumpitch-init.ly’.
Snippets: Percussion.
Internals Reference: DrumStaff, DrumVoice.
[ << Specialist notation ] | [Top][Contents][Index] | [ General input and output >> ] |
[ < Custom percussion staves ] | [ Up : Common notation for percussion ] | [ Wind instruments > ] |
Ghost notes
Also known as dead, muted, silenced or false notes; ghost notes can be
created using the \parenthesize
command, see Parentheses.
\new DrumStaff << \new DrumVoice = "1" { s1 } \new DrumVoice = "2" { s1 } \drummode { << { hh8[ 8] <hh sn> hh16 \parenthesize sn hh \parenthesize sn hh8 <hh sn> hh } \\ { bd4 r4 bd8 8 r8 bd } >> } >>
See also
Notation Reference: Parentheses.
Snippets: Percussion.
[ << Specialist notation ] | [Top][Contents][Index] | [ General input and output >> ] |
[ < Custom percussion staves ] | [ Up : Common notation for percussion ] | [ Wind instruments > ] |