| [ << 基礎となるコンセプト ] | [トップ][目次][インデックス][ ? ] | [ 出力を調整する >> ] | ||
| [ < ボイスの明示的なインスタンス化 ] | [ 上へ : 音楽を保持するボイス ] | [ コンテキストとエングラーバ > ] | ||
3.2.3 ボイスとボーカル
声楽には特別な困難があります: 2 つの表記 – 音符と歌詞 – を組み合わせる必要があります。
すでに \addlyrics{} コマンドを見てきました。これは簡単な楽譜であればうまく処理できます。しかしながら、この方法では限界があります。より複雑な音楽では、\new Lyrics を使って歌詞を
Lyrics コンテキストに取り込み、ボイスに割り当ている名前を使って
\lyricsto{} でその歌詞を明示的に音符にリンクさせます。
<<
\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.
}
>>
歌詞は Staff コンテキストではなく Voice コンテキストにリンクさせなければならないということに注意してください。このため、Staff コンテキストと Voice コンテキストを明示的に作成する必要があります。
LilyPond がデフォルトで使用する自動連桁は楽器だけの音楽ではうまく機能しますが、歌詞を持つ音楽ではそれほどうまく機能しません。そこでは連桁はまったく必要ないか、歌詞のメリスマ (訳者注: 歌詞の 1 音節に対して複数の音符を割り当てること) を示すために使用されるかのどちらかです。上の例では、自動連桁を Off にするためにコマンド \autoBeamOff を使用しています。
以前使用した Judas Maccabæus からの例を再度使用して、より自由度の高い方法を示します。まず、楽譜の内容を変数に振り直し、音楽と歌詞を譜表構造から分離させます。さらに ChoirStaff ブラケットを導入します。歌詞自体は、音楽ではなく歌詞として解釈されることを保証するために、\lyricsmode で導入されなければなりません。
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
}
>>
>>
}
これはすべての声楽譜の基本的な構造です。必要に応じてさらに多くの譜が追加されるかもしれませんし、さらに多くのボイスが譜に追加されるかもしれませんし、さらに多くの歌詞 (原文: verse、各ボイスに対する歌詞、あるいは、歌詞の 1 番、2 番のことを指すと思われる) が歌詞に追加されるかもしれません。音楽部分が長くなりすぎた場合は、音楽を保持している変数を容易に別のファイルに置くことができます。
ここで、例として 4 つの歌詞 – それぞれが SATB (ソプラノ、アルト、テナー、バス) に対してセットされている – を持つ賛美歌の最初の 1 行目を取り上げます。この歌の場合、4 つのパートに対する歌詞の言葉は同じです。変数を使用して音楽記譜と歌詞の言葉を譜表構造から分離させている手法に注意してください。さらに、 ‘TimeKey’ と呼ぶことにした変数が、2 つの譜で使用されるいくつかのコマンドを保持するために、使用されていることにも注意してください。他の例では、この変数はしばしば ‘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 }
>>
>>
}
最後に、2 つの譜の 2 パートのリフレイン (繰り返し) につながる単一の歌詞の節をコードする方法を示す例を挙げます。これを 1 つの楽譜で達成するためのシークエンシャル部分と同時進行部分の配置の仕方は非常にトリッキーです。そのため、説明を注意深く読んでください!
コーラスの開始点で波括弧を表示させたいので、ChoirStaff を保持する score ブロックで始めます。通常、すべての譜を並列にするために \new ChoirStaff の後に山括弧を置く必要があります。山括弧を使用しても害はありませんが、ここではコーラスまで並列化を先延ばししたいので波括弧を使用します。ChoirStaff の中で、まず最初に歌詞を保持する譜表を置く必要があります。音符と歌詞を並列に並べなければならないので、\new Voice と
\new Lyrics を同時に開始させるために山括弧で囲む必要があります:
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
}
>>
}
}
これで歌詞の行が与えられました。
今度は、refainA を同じ譜表で続けて、それと並列に refrainB のためにもう 1 つ譜表を導入する必要があります。そのため、この並列部分は verse Voice の中の \break の直後に置かれなければなりません。そうです、verse Voice の中にです!ここで並列部分を示します。同じ要領でここにもっと多くの譜を導入することもできます。
<<
\refrainnotesA
\new Lyrics \lyricsto verse {
\refrainwordsA
}
\new Staff <<
\new Voice = "refrainB" {
\refrainnotesB
}
\new Lyrics \lyricsto "refrainB" {
\refrainwordsB
}
>>
>>
ここで最終結果を示します。これはコーラスになっている 2 つの譜を持ち、並列部分がどのように 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
}
>>
}
}
これはシークエンシャル ブロックと同時進行ブロックがどのように機能するかを理解するための手助けとしては興味深く有用です。しかしながら、実際にこれをコードする場合は、恐らく以下のように暗黙の
\book ブロック内部に 2 つの \score ブロックを置くようにするでしょう:
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
}
>>
>>
}
参照
記譜法リファレンス: Vocal music
| [ << 基礎となるコンセプト ] | [トップ][目次][インデックス][ ? ] | [ 出力を調整する >> ] | ||
| [ < ボイスの明示的なインスタンス化 ] | [ 上へ : 音楽を保持するボイス ] | [ コンテキストとエングラーバ > ] | ||
他の言語: English, česky, deutsch, español, français, magyar, italiano, nederlands