3.2.3 Voices and vocals

Vocal music presents a special difficulty: we need to combine two expressions – notes and lyrics.

You have already seen the \addlyrics{} command, which handles simple scores well. However, this technique is quite limited. For more complex music, you must introduce the lyrics in a Lyrics context using \new Lyrics and explicitly link the lyrics to the notes with \lyricsto{}, using the name assigned to the Voice.

<<
  \new Voice = "one" \relative c'' {
    \autoBeamOff
    \time 2/4
    c4 b8. a16 g4. f8 e4 d c2
  }
  \new Lyrics \lyricsto "one" {
    No more let sins and sor -- rows grow.
  }
>>

[image of music]

Note that the lyrics must be linked to a Voice context, not a Staff context. This is a case where it is necessary to create Staff and Voice contexts explicitly.

The automatic beaming which LilyPond uses by default works well for instrumental music, but not so well for music with lyrics, where beaming is either not required at all or is used to indicate melismata in the lyrics. In the example above we use the command \autoBeamOff to turn off the automatic beaming.

Let us reuse the earlier example from Judas Maccabæus to illustrate this more flexible technique. We first recast it to use variables so the music and lyrics can be separated from the staff structure. We also introduce a ChoirStaff bracket. The lyrics themselves must be introduced with \lyricmode to ensure they are interpreted as lyrics rather than music.

global = { \time 6/8 \partial 8 \key f \major}
SopOneMusic = \relative c'' {
  c8 | c([ bes)] a a([ g)] f | f'4. b, | c4.~ c4 }
SopTwoMusic = \relative c' {
  r8 | r4. r4 c8 | a'([ g)] f f([ e)] d | e([ d)] c bes' }
SopOneLyrics = \lyricmode {
  Let | flee -- cy flocks the | hills a -- dorn, __ }
SopTwoLyrics = \lyricmode {
  Let | flee -- cy flocks the | hills a -- dorn, }

\score {
  \new ChoirStaff <<
    \new Staff <<
      \new Voice = "SopOne" {
        \global
        \SopOneMusic
      }
      \new Lyrics \lyricsto "SopOne" {
        \SopOneLyrics
      }
    >>
    \new Staff <<
      \new Voice = "SopTwo" {
        \global
        \SopTwoMusic
      }
      \new Lyrics \lyricsto "SopTwo" {
        \SopTwoLyrics
      }
    >>
  >>
}

[image of music]

This is the basic structure of all vocal scores. More staves may be added as required, more voices may be added to the staves, more verses may be added to the lyrics, and the variables containing the music can easily be placed in separate files should they become too long.

Here is an example of the first line of a hymn with four verses, set for SATB. In this case the words for all four parts are the same. Note how we use variables to separate the music notation and words from the staff structure. See too how a variable, which we have chosen to call ‘TimeKey’, is used to hold several commands for use within the two staves. In other examples this is often called ‘global’.

TimeKey = { \time 4/4 \partial 4 \key c \major}
SopMusic   = \relative c' { c4 | e4. e8 g4  g  | a a g }
AltoMusic  = \relative c' { c4 | c4. c8 e4  e  | f f e }
TenorMusic = \relative c  { e4 | g4. g8 c4. b8 | a8 b c d e4 }
BassMusic  = \relative c  { c4 | c4. c8 c4  c  | f8 g a b c4 }
VerseOne   = \lyricmode {
  E -- | ter -- nal fa -- ther, | strong to save, }
VerseTwo   = \lyricmode {
  O | Christ, whose voice the | wa -- ters heard, }
VerseThree = \lyricmode {
  O | Ho -- ly Spi -- rit, | who didst brood }
VerseFour  = \lyricmode {
  O | Tri -- ni -- ty of | love and pow'r }

\score {
  \new ChoirStaff <<
    \new Staff <<
      \clef "treble"
      \new Voice = "Sop"  { \voiceOne \TimeKey \SopMusic }
      \new Voice = "Alto" { \voiceTwo \AltoMusic }
      \new Lyrics \lyricsto "Sop" { \VerseOne   }
      \new Lyrics \lyricsto "Sop" { \VerseTwo   }
      \new Lyrics \lyricsto "Sop" { \VerseThree }
      \new Lyrics \lyricsto "Sop" { \VerseFour  }
    >>
    \new Staff <<
      \clef "bass"
      \new Voice = "Tenor" { \voiceOne \TimeKey \TenorMusic }
      \new Voice = "Bass"  { \voiceTwo \BassMusic  }
    >>
  >>
}

[image of music]

We end with an example to show how we might code a solo verse which continues into a two-part refrain in two staves. The positioning of the sequential and simultaneous sections to achieve this within a single score is quite tricky, so follow the explanation carefully!

Let’s start with a score block containing a ChoirStaff, as we would like the brace to appear at the start of the chorus. Normally you would need angle brackets after \new ChoirStaff to bring in all the staves in parallel, but here we want to defer the parallelism during the solo so we use braces, although angle brackets here wouldn’t hurt. Inside the ChoirStaff we want first the staff which will contain the verse. This must contain notes and lyrics in parallel, so here we need angle brackets around the \new Voice and \new Lyrics to start them at the same time:

versenotes = \relative c'' {
  \clef "treble"
  \key g \major
  \time 3/4 g g g b b b
}
versewords = \lyricmode {
  One two three four five six
}
\score {
  \new ChoirStaff {
    \new Staff <<
      \new Voice = "verse" {
        \versenotes \break
      }
      \new Lyrics \lyricsto verse {
        \versewords
      }
    >>
  }
}

[image of music]

That gives the verse line.

Now we want to continue with refrainA on the same staff while a second staff is introduced in parallel with it for refrainB, so this is a parallel section which must be positioned immediately following the \break in the verse Voice. Yes, within the verse Voice! Here’s that parallel section. More staves could be introduced here in the same way.

<<
  \refrainnotesA
  \new Lyrics \lyricsto verse {
    \refrainwordsA
  }
  \new Staff <<
    \new Voice = "refrainB" {
      \refrainnotesB
    }
    \new Lyrics \lyricsto "refrainB" {
      \refrainwordsB
    }
  >>
>>

Here’s the final result with two staves in the chorus showing how the parallel section is positioned within the verse Voice:

versenotes = \relative c'' {
  \clef "treble"
  \key g \major
  \time 3/4 g g g b b b
}
refrainnotesA = \relative c'' {
  \time 2/4
  c c g g \bar "|."
}
refrainnotesB = \relative c {
  \clef "bass"
  \key g \major
  c e d d
}
versewords = \lyricmode {
  One two three four five six
}
refrainwordsA = \lyricmode {
  la la la la
}
refrainwordsB = \lyricmode {
  dum dum dum dum
}
\score {
  \new ChoirStaff {
    \new Staff <<
      \new Voice = "verse" {
        \versenotes \break
        <<
          \refrainnotesA
          \new Lyrics \lyricsto "verse" {
            \refrainwordsA
          }
          \new Staff <<
            \new Voice = "refrainB" {
              \refrainnotesB
            }
            \new Lyrics \lyricsto "refrainB" {
              \refrainwordsB
            }
          >>
        >>
      }
      \new Lyrics \lyricsto "verse" {
        \versewords
      }
    >>
  }
}

[image of music]

However, although this is an interesting and useful exercise to help you to understand how sequential and simultaneous blocks work, in practice one would perhaps choose to code this as two \score blocks within an implicit \book block, as follows:

versenotes = \relative c'' {
  \clef "treble"
  \key g \major
  \time 3/4 g g g b b b
}
refrainnotesA = \relative c'' {
  \time 2/4
  c c g g \bar "|."
}
refrainnotesB = \relative c {
  \clef "bass"
  \key g \major
  c e d d
}
versewords = \lyricmode {
  One two three four five six
}
refrainwordsA = \lyricmode {
  la la la la
}
refrainwordsB = \lyricmode {
  dum dum dum dum
}
\score {
  \new Staff <<
    \new Voice = "verse" {
      \versenotes
    }
    \new Lyrics \lyricsto "verse" {
      \versewords
    }
  >>
}

\score {
  \new ChoirStaff <<
    \new Staff <<
      \new Voice = "refrainA" {
        \refrainnotesA
      }
      \new Lyrics \lyricsto "refrainA" {
        \refrainwordsA
      }
    >>
    \new Staff <<
      \new Voice = "refrainB" {
        \refrainnotesB
      }
      \new Lyrics \lyricsto "refrainB" {
        \refrainwordsB
      }
    >>
  >>
}

[image of music]

See also

Notation Reference: Vocal music.


Other languages: français, español, deutsch.

Learning Manual