Different lyrics are often repeated for similar musical phrases as verses. It is thus necessary to indicate the applicable verse number in certain contexts with the verse attribute. Lyrics can be written as content of the song element, or in a separate file with the *.lyr extension.
In this example the lyrics for verses 1 and 2 are mapped on the same bar sequence. The bar is the parent element -- as lyrics are usually matched to music. Where music should be matched to lyrics, the task is much more complex.
In MML it should not be necessary to declare a lyric element for each bar. Lyrics should continue along the bars until stopped with the end tag. For bars without lyrics either the lyric element should be ended, or empty piped syllables should be indicated.
<bar barid="1">... <lyric verse="1" barref="1">blah blah blah </lyric> <lyric verse "2" barref="1">blah2 blah2 blah2 </lyric> </bar>
Two methods can be used to indicate the relation between text and music bars:
explicit bar method, and pipe method. Pipes ( | ) are inserted
in lyric text at each bar location.
Here is an example from Bach's Chorale.
<lyric verse="2"> <upbeat>But </upbeat> <bar barref="1"> Thou, my God, no </bar> <bar barref="2"> rest doth know In </bar> <bar barref="3"> Thy unslumb'ring </bar> <bar barref="4"> might; Thou </bar> <bar barref="5"> hatest darkness </bar> <bar barref="6"> as Thy foe, For </bar> <bar barref="7"> Thou Thyself are </bar> <bar barref="8"> light.</bar> </lyric>
Here is the same example written with the pipe method.
<lyric note="4" verse="1" lang="en" barref="1"> Now | that the sun doth | shine no more, And | day hath reached its | close, They | calmly sleep who | wept before, The | wearied find re | pose. </lyric>
There is not always a one-to-one relationship between the sequential instances of notes in a bar and the syllables of the lyrics. Sometimes a single syllable is stretched out over more than one note -- indicated with the stretch element. Other times more than one syllable are squashed onto a single note -- indicated with the squash element. The squash element is only applicable when lyrics and music are presented graphically, such as in CWN. In performance each pronounced language syllable would map to a real sounding note.
Lyrics can be matched to note sequences as follows:
To determine which method is applied, the MML sensitive program should first scan for double pipes. If found, the syllable method is applied and single pipes mean syllables. If not, single pipes mean bars and the bar method is applied, implying that a syllable map (such as the SMF Lyric Meta Event Definition of the MIDI Manufacturer's Association) must be consulted for proper rendering.
In this example the single syllable of time is stretched over
3 notes. The lyric text time is contained within the stretch element tags.
<lyric barref="1">Once upon a <stretch notes="3">time </stretch> there... </lyric>
In this example the two syllables of upon are squashed onto one
note. The lyric text upon is contained within the squash element tags.
<lyric barref="3">Three little birds <squash notes="1">upon </squash> a branch... </lyric>
© 1999, 2000 Author: Jacques Steyn