Modification de la métrique au sein d’un fragment polymétrique à l’aide de \scaleDurations

La propriété measureLength, conjointement avec measurePosition, détermine l’endroit où une barre de mesure est requise. L’utilisation d’un \scaleDurations a l’inconvénient que l’échelonnement des durées rend compliqués les changements de métrique. Il est nécessaire en pareil cas de définir manuellement measureLength, avec un appel à ly:make-moment. Le second argument devra être identique au deuxième argument de \scaleDurations.

\layout {
  \context {
    \Score
    \remove "Timing_translator"
  }
  \context {
    \Staff
    \consists "Timing_translator"
  }
}

<<
  \new Staff {
    \scaleDurations 8/5 {
      \time 6/8
      \set Timing.measureLength = \musicLength 1*6/5
      b8 b b b b b
      \time 2/4
      \set Timing.measureLength = \musicLength 1*4/5
      b4 b
    }
  }
  \new Staff {
    \clef bass
    \time 2/4
    c2 d e f
  }
>>

[image of music]


LilyPond snippets v2.25.21 (branche de développement).