Changement d’échelle des durées

La durée des notes, silences ou accords peut se modifier en lui adjoignant une fraction N/D, donnant « *N/D » – ou « *N » si D=1. Ce facteur peut aussi s’exprimer à l’aide d’une expression Scheme évaluant à un nombre ou un temps musical comme *#(ly:music-length musique). Cette solution est pratique pour échelonner à une durée de ‘1’ et laisser une note ou un silence multimesure s’étirer sur une longueur dérivée d’une variable musicale.

L’ajout de ce facteur ne modifiera en rien l’apparence des notes ou silences produits, mais affectera le positionnement de l’objet dans la mesure, ainsi que le rendu MIDI. Cette fraction peut elle-même être multipliée, ce qui donne quelque chose du style *M*N/D. Ce facteur d’échelonnement est partie intégrante de la durée : en l’absence de durée explicite à la note suivante, cette durée échelonnée est considérée comme valeur par défaut.

Dans l’exemple suivant, les trois premières notes prennent exactement deux temps, mais aucun triolet n’est imprimé.

\relative {
  \time 2/4
  % Alter durations to triplets
  a'4*2/3 gis a
  % Normal durations
  a4 a
  % Double the duration of chord
  <a d>4*2
  % Duration of quarter, appears like sixteenth
  b16*4 c4
}

[image of music]

La durée d’un silence invisible ou saut de notes (skip) peut elle aussi être affectée d’un multiplicateur. Cette technique permet tout simplement de sauter plusieurs mesures, comme par exemple un s1*23.

Il est tout à fait possible d’échelonner des fragments musicaux plus ou moins longs à l’aide d’une simple fraction, comme si chaque note, accord ou silence était affecté de ce même quotient. L’apparence de cette musique ne sera en rien modifiée ; seule la durée des notes est multipliée en interne par le facteur d’échelle donné – généralement numérateur/dénominateur. Voici un exemple illustrant la manière de comprimer ou étirer de la musique :

\relative {
  \time 2/4
  % Durée normale
  <c'' a>4 c8 a
  % Musique échelonnée à 2/3
  \scaleDurations 2/3 {
    <c a f>4. c8 a f
  }
  % Musique échelonnée par 2
  \scaleDurations 2 {
    <c' a>4 c8 b
  }
}

[image of music]

Cette technique est tout à fait appropriée à la notation polymétrique – see section Notation polymétrique.

Voir aussi

Manuel de notation : N-olets, Notation polymétrique, Silences invisibles.

Morceaux choisis : Rythme.

Problèmes connus et avertissements

Le calcul de la position au sein d’une mesure doit prendre en considération tous les facteurs d’échelonnement appliqués aux notes de cette mesure ainsi que tous les reliquats des mesures précédentes. Ce calcul utilise des nombres rationnels. Dès lors qu’un calcul recontrera un numérateur ou dénominateur intermédiaire d’une valeur supérieure à 2^30, LilyPond s’arrêtera à ce point précis sans pour autant signaler d’erreur.


GNU LilyPond – Manuel de notation v2.25.14 (branche de développement).