将二级歌词与隐藏的语音对齐

Mik*_*iLL 2 lilypond

我觉得我很接近,但似乎不能让两个节与一个隐藏的声音对齐 - 所以节奏的变化可以通过歌词来近似.

melody = \relative c' {
  \clef treble
  \key c \major
  \time 4/4
  c4 d e f | g f e d |

  <<
 \new Voice = "shown" {
  \relative c' { 
  c4 d c d | e f g2
     }
    }  

  \new Voice = "hidden" {
   \hide { 
  c'8 c d d c c d d | e f g2
     }
    }
  >>
}

text =  \lyricmode {
   Here we have a | li -- tle si -- lly

  <<
    {
      \set stanza = #"1. "
      Si -- lly li -- tle | al -- pha -- bet

    \new Lyrics {
      \set associatedVoice = "hidden"
      \set stanza = #"2. " 
      Si -- ly li -- tle fu -- nny soun -- ding |
      Al -- pha -- bet song.
        }
    }
  >>
  }

\score {
  <<
    \new Voice = "one" { \melody }
    \new Lyrics \lyricsto "one" \text
  >>

  \layout { }
  \midi { }
}
Run Code Online (Sandbox Code Playgroud)

上面显示了两种声音,也没有显示它们的"相关"(或不是)歌词.

小智 6

您可以使用NullVoice上下文:

\version "2.19.15"
\language "english"

\score {
  \new Staff
  <<
    \new Voice = "displayedMusic" \relative c'' {
      b8 c d \times 2/3 {c16 d c}
      b8 a g a
      bf c bf \times 2/3 {a16 bf a}
      g8 f g a
      bf f' e a,
      d cs4.~
      cs1
    }

    \new NullVoice = "hiddenMusic"
    {
      c4 d e f %\break
      g a b8~ b c4 \break
      d e f g a
    }
    \new Lyrics \lyricsto "hiddenMusic" {
      Those words seem to be aligned to the hidden melody or are they?
    }
  >>
}
Run Code Online (Sandbox Code Playgroud)

这将导致:

乐谱片段