lilypond-user-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: inclure un nouveau fichier .scm


From: Nicolas Sceaux
Subject: Re: inclure un nouveau fichier .scm
Date: Sun, 14 Feb 2010 11:07:59 +0100

Le 13 févr. 2010 à 18:03, Philippe Hezaine a écrit :

> #(define-public absolute-volume-alist '(
> (set! absolute-volume-alist
>      (append 
>      '(
>       ("sf" . 1.00)
>       ("fffff" . 0.95)
>       ("ffff" . 0.91)
>       ("fff" . 0.83)
>       ("ff" . 0.75)
>       ("f" . 0.67)
>       ("mf" . 0.60)
>       ("mp" . 0.53)
>       ("p" . 0.46)
>       ("pp" . 0.39)
>       ("ppp" . 0.32)
>       ("pppp" . 0.25)
>       ("ppppp" . 0.12)
>       )
>      absolute-volume-alist))
>       ))

Ah, s'il s'agit simplement de changer les volumes associés aux
indications de nuance, alors il y a plus simple : il suffit de
modifier la variable dynamicAbsoluteVolumeFunction dans le
context Score.  Cette variable donne la fonction qui calcule le
volume.

%% Note : je n'ai pas testé si les volumes sont corrects dans le
%% fichier midi produit :
#(define my-dynamic-absolute-volume
   (let ((absolute-volume-alist '(("sf" . 1.00)
                                  ("fffff" . 0.95)
                                  ("ffff" . 0.91)
                                  ("fff" . 0.83)
                                  ("ff" . 0.75)
                                  ("f" . 0.67)
                                  ("mf" . 0.60)
                                  ("mp" . 0.53)
                                  ("p" . 0.46)
                                  ("pp" . 0.39)
                                  ("ppp" . 0.32)
                                  ("pppp" . 0.25)
                                  ("ppppp" . 0.12))))
     (lambda (s)
       (let ((entry (assoc s absolute-volume-alist)))
         (if entry
             (cdr entry))))))

\layout {
  \context {
    \Score
    dynamicAbsoluteVolumeFunction = #my-dynamic-absolute-volume
  }
}

\score {
  { c' \f d' \mp e' \pp }
  \layout {}
  \midi {}
}



reply via email to

[Prev in Thread] Current Thread [Next in Thread]