Antoine CAVARD

4 minute read

LilyPond ou « mare aux nénuphars » est un logiciel de gravure musicale : on doit réaliser un script dans un fichier texte pour coder la partition. On peut utiliser Frescobaldi, une interface semi-graphique pour l’utilisation de LilyPond.

Voici mon retour d’expérience sur l’écriture de partions de batterie avec ces deux bons logiciels.


Légende de notation

Avant toute chose, vous devez définir votre notation. Vous pouvez utiliser la notation référencée dans le livre « Guide to Standardized Drumset Notation » par Norman Weinberg.

J’ai utilisé la notation suivante, inspirée de Dante Agostini :

lily-legende.png
Légende de notion


#(define DanteAgostini '(
                           (ridecymbal    cross    #f        4)
                           (crashcymbal   xcircle  #f        6)
                           (crashcymbala  xcircle  #f        7)
                           (openhihat     cross    "open"    5)
                           (closedhihat   cross    "stopped" 5)
                           (pedalhihat    cross    #f       -5)
                           (hihat         cross    #f        5)
                           (lowmidtom     default  #f        2)
                           (snare         default  #f        0)
                           (sidestick     triangle #f        0)
                           (tambourine    default  #f       -2)
                           (lowtom        default  #f       -3)
                           (bassdrum      default  #f       -5)
                           (himidtom      default  #f        3)
                           (acousticsnare mensural #f        0)
 
 ))
global = {
  \set DrumStaff.drumStyleTable = #(alist->hash-table DanteAgostini)
}

Par défaut, LilyPond utilise le fichier drumpitch-ini.ly pour la configuration de la hauteur des notes de batterie et les symboles.

Pour définir une notation personnelle, on crée une variable DanteAgostini qui contient notre configuration d’écriture. La macro define permet de substituer la liste de notation (crash, ride, etc…) pour chaque occurrence DanteAgostini trouvée.

Notation deux voies

Dans le principe de notation à deux voies, on écrit avec des hampes vers le haut ou vers le bas, pour séparer de ce qui est joué avec les mains de ce qui est joué aux pieds.

lily-double-voix.png
Deux voies

hautSequenceA = \drummode {<<sna16 cymc>> sna sna sna \acciaccatura sn sn sn sna sna <<sna bd>> sna sna sna \acciaccatura tommh tommh tomml sna sna}
basSequenceA = \drummode {hhp8 hhp hhp hhp hhp hhp8 hhp hhp }

hautSequenceB = \drummode {<<sna16 bd>> sna sna sna \acciaccatura sn sn sn sna sna <<sna bd>> sna sna sna \acciaccatura tommh tommh tomml sna sna}
basSequenceB = \drummode {hhp8 hhp hhp hhp hhp hhp hhp hhp }

hautSequenceC = \drummode {<<sna16 bd>> sna16 sna sna \acciaccatura sn sn sna \acciaccatura sn sn sna <<sna bd>> \acciaccatura sn sn \times 2/3 { toml32 tommh toml } bd16 \acciaccatura sn16. sn16. bd32 \acciaccatura sn16 sn bd  }
basSequenceC = \drummode {hhp8 hhp8 hhp hhp hhp hhp8 hhp hhp8 }

partition =  {
  \global 
  \repeat percent 1 { << \new DrumVoice { \voiceOne \hautSequenceA }  \new DrumVoice { \voiceTwo \basSequenceA }>> }
  \repeat percent 2 { << \new DrumVoice { \voiceOne \hautSequenceB }  \new DrumVoice { \voiceTwo \basSequenceB }>> }
  \repeat percent 1 { << \new DrumVoice { \voiceOne \hautSequenceC }  \new DrumVoice { \voiceTwo \basSequenceC }>> }
}

Affichage

ToutesLesQuatreMesures = \drummode { \repeat unfold 18 { s1 * 4 \break } }

Pour forcer l’écriture sur 4 mesures par portée pour une lecture de la partition plus agréable pour ce type de morceau. J’utilise la méthode suivante :

Je crée un calque que je nomme ToutesLesQuatreMesures. Je commence avec une mesure vide s1 que l’on répète 4 fois et on force le retour à la ligne par \break. Dans ce morceau, on a 72 mesures cela représente 18 portées (18 *4 = 72).  Pour cela, j’utilise l’instruction \repeat unfload 18.

Ce calque est associé à la partition de la manière suivante :

\score {
  \new DrumStaff
  <<
    \ToutesLesQuatreMesures
    \partition
  >>
}

Cependant, LilyPond gère l’affiche sur 4 mesures autant que possible en fonction du format du papier et de la quantité de notes à jouer. On peut aider LilyPond  dans cette tâche par la modification de l’orientation du papier et la taille des caractères.

\paper {
  #(set-paper-size "a4" 'landscape)
}
\score {
  \layout {
    #(layout-set-staff-size 23)
  }
}

Générer un aperçu

Pour générer un aperçu sur une page Web, j’utilise le programme lilypond-book, qui est installé par défaut avec le paquetage.

Dans un fichier HTML vierge :

  1. on écrit la balise  ouvrante
  2. on insère le script LilyPond de la partition
  3. on écrit la balise fermante

Dans un terminal on exécute la commande lilypond-book.

lilypond-book --lily-output-dir=REPERTOIRE NonDuFichier.html --output=./REPERTOIRE

Dans le répertoire créé par la commande se trouve un fichier HTML. Ce fichier contient le code à utiliser pour afficher le rendu et un lien pour accéder au code source. Ce code est à copier/coller dans votre page Web. Si nécessaire, vous adaptez les chemins d’accès aux ressources.

Partitions

Groupe Titre Fichiers PDF Fichiers LilyPond
The black keys Tighten Up Tighten_Up.pdf Tighten_Up.ly
Muse Feeling Good Feeling_Good.pdf Feeling_Good.ly
Red Hot Chilli Peppers Don’t forget me Dont_forget_me.pdf Dont_forget_me.ly