| [ << Percussion ] | [Top][Contents][Index] | [ Wind instruments >> ] | 
| [ < Percussion ] | [ Up: Percussion ] | [ References for percussion > ] | 
13.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.
| 13.1.1 References for percussion | ||
| 13.1.2 Basic percussion notation | ||
| 13.1.3 Drum rolls | ||
| 13.1.4 Pitched percussion | ||
| 13.1.5 Percussion staves | ||
| 13.1.6 Custom percussion staves | ||
| 13.1.7 Ghost notes | 
| [ << Percussion ] | [Top][Contents][Index] | [ Wind instruments >> ] | 
| [ < Common notation for percussion ] | [ Up: Common notation for percussion ] | [ Basic percussion notation > ] | 
13.1.1 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.
| [ << Percussion ] | [Top][Contents][Index] | [ Wind instruments >> ] | 
| [ < References for percussion ] | [ Up: Common notation for percussion ] | [ Drum rolls > ] | 
13.1.2 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 }![[image of music]](../02/lily-1a9a1e00.png)
This is shorthand for:
\new DrumStaff \drummode { hihat4 hh bassdrum bd }![[image of music]](../ee/lily-bdacc5f3.png)
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 }![[image of music]](../0b/lily-1283c7ca.png)
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.
| [ << Percussion ] | [Top][Contents][Index] | [ Wind instruments >> ] | 
| [ < Basic percussion notation ] | [ Up: Common notation for percussion ] | [ Pitched percussion > ] | 
13.1.3 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 }![[image of music]](../19/lily-0083b1c5.png)
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" } }![[image of music]](../47/lily-5e056a18.png)
See also
Notation Reference: Tremolo repeats.
Snippets: Percussion.
| [ << Percussion ] | [Top][Contents][Index] | [ Wind instruments >> ] | 
| [ < Drum rolls ] | [ Up: Common notation for percussion ] | [ Percussion staves > ] | 
13.1.4 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.
| [ << Percussion ] | [Top][Contents][Index] | [ Wind instruments >> ] | 
| [ < Pitched percussion ] | [ Up: Common notation for percussion ] | [ Custom percussion staves > ] | 
13.1.5 Percussion staves
A percussion part for more than one instrument typically uses a
multi-line 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 } >>![[image of music]](../dd/lily-77d24e5a.png)
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 } >> } >>![[image of music]](../15/lily-c06ea73a.png)
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: ![[image of music]](../40/lily-0e833749.png)  - 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, and- tomfh.
- agostini-drums-style
- Invented by the French percussionist Dante Agostini in 1965, this notation is commonly employed in France but also elsewhere. ![[image of music]](../b9/lily-60cfc583.png)  
- weinberg-drums-style
- Based on the work of Norman Weinberg, published in his Guidelines for Drumset Notation. ![[image of music]](../9a/lily-ec9d9a3a.png)  
- timbales-style
- This typesets timbales on a two line staff: ![[image of music]](../2b/lily-f16cc795.png)  
- congas-style
- This typesets congas on a two line staff: ![[image of music]](../bd/lily-e44fe2cf.png)  
- bongos-style
- This typesets bongos on a two line staff: ![[image of music]](../9c/lily-fe16a5ff.png)  
- percussion-style
- To typeset all kinds of simple percussion on one-line staves: ![[image of music]](../cd/lily-d6afe3f6.png)  
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.
| [ << Percussion ] | [Top][Contents][Index] | [ Wind instruments >> ] | 
| [ < Percussion staves ] | [ Up: Common notation for percussion ] | [ Ghost notes > ] | 
13.1.6 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 ‘()’ to indicate the 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.
The entry for an articulation can either be a script name symbol or a pair, with the first element the script name symbol and the second a forced-direction indicator for the script.
[In the following example, note the use of the quasi-quotation shorthand (‘`’) at the beginning of the Scheme expression instead of the standard quotation shorthand (‘'’), which enables the unquote shorthand (‘,’) to evaluate the element it precedes.]
#(define mydrums `( (bassdrum () #f -1) (snare () #f 0) (hihat cross #f 1) (halfopenhihat cross halfopen 1) (pedalhihat xcircle stopped 2) (splashhihat xcircle (open . ,DOWN) 2) (lowtom diamond #f 3))) up = \drummode { hh8 hh hhho hhho hhp4 hhs } down = \drummode { bd4 sn bd toml8 toml } \new DrumStaff \with { drumStyleTable = #(alist->hash-table mydrums) } << \new DrumVoice { \voiceOne \up } \new DrumVoice { \voiceTwo \down } >>![[image of music]](../8a/lily-816ee438.png)
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 appending 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 }![[image of music]](../1d/lily-0c5fb5f6.png)
In a similar manner, the drumPitchTable property
associates a specific pitch (meaning a different instrument
sound, as provided by available MIDI sound fonts) 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 () #f -2) (dbassmute () stopped -2) (dopen () #f 0) (dopenmute () stopped 0) (dslap () #f 2) (dslapmute () 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 {} }![[image of music]](../36/lily-170bd7f9.png)
See also
Installed Files: ly/drumpitch-init.ly.
Snippets: Percussion.
Internals Reference: DrumStaff, DrumVoice.
| [ << Percussion ] | [Top][Contents][Index] | [ Wind instruments >> ] | 
| [ < Custom percussion staves ] | [ Up: Common notation for percussion ] | [ Wind instruments > ] | 
13.1.7 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 } >> } >>![[image of music]](../a2/lily-f7366f71.png)
See also
Notation Reference: Parentheses.
Snippets: Percussion.
| [Top][Contents][Index] |