Transposició

Una expressió musical es pot transportar mitjançant \transpose. La sintaxi és

\transpose nota_origen nota_destí expressió_musical

Això significa que la expressió_musical es transporta l’interval que hi ha entre les notes nota_origen i nota_destí: qualsevol nota amb l’altura de nota_origen es canvia per nota_destí i qualsevol altra nota es transporta el mateix interval. Les dues notes s’introdueixen en mode absolut.

Nota: La música que està dins d’un bloc \transpose és absoluta, a no ser que s’inclogui una introducció \relative dins del bloc.

Per exemple, agafem una peça escrita en la tonalitat de Re major. Es pot transposar cap amunt a Mi major; observeu que també l’armadura de la tonalitat es transporta automàticament.

\transpose d e {
  \relative {
    \key d \major
    d'4 fis a d
  }
}

[image of music]

Si una particel·la escrita en Do (afinació de concert normal) es pot tocar amb un clarinet en La (per al qual un La s’escriu com un Do, i que sona una tercera menor per sota del que està escrit), la particel·la corresponent es produeix mitjançant:

\transpose a c' {
  \relative {
    \key c \major
    c'4 d e g
  }
}

[image of music]

Observeu que especifiquem \key c \major de forma explícita. Si no especifiquem cap tonalitat, les notes es transporten però no s’imprimeix l’armadura.

\transpose distingeix entre notes enarmòniques: tant \transpose c cis com \transpose c des transporten un semitò cap amunt. La primera versió imprimeix sostinguts i les notes no es mouen del seu lloc a l’escala, en canvi la segona imprimeix bemolls de la nota següent.

music = \relative { c' d e f }
\new Staff {
  \transpose c cis { \music }
  \transpose c des { \music }
}

[image of music]

\transpose també es pot usar per introduir notes escrites per a un instrument transpositor. Els exemples interiors mostren com escriure altures en Do (o en afinació de concert) i gravar-les per a un instrument transpositor, però també és possible el cas contrari si, per exemple, tenim un conjunt de parts instrumentals i voleu fer un guió en Do per al director. Per exemple, en introduir música per a trompeta en Si bemoll que comença per un Mi a la partitura (Re de concert), es pot escriure:

musicaEnSiBemol = { e4 … }
\transpose c bes, \musicaEnSiBemol

Per imprimir aquesta música en Fa (per exemple, en arreglar-la per a trompa) podeu envolta la música existent amb un altre \transpose:

musicaEnSiBemol = { e4 … }
\transpose f c' { \transpose c bes, \musicaEnSiBemol }

Per veure més informació sobre instruments transpositors, consulteu Transposició dels instruments.

Fragments de codi seleccionats

Transposició de la música amb el menor nombre d’alteracions

Aquest exemple utilitza codi de l’Scheme per forçar les modificacions enharmòniques de les notes, i així tenir el menor nombre d’alteracions accidentals. En aquest cas s’apliquen les regles següents:

D’aquesta forma se selecciona el major nombre de notes enharmòniques naturals.

#(define (naturalize-pitch p)
   (let ((o (ly:pitch-octave p))
         (a (* 4 (ly:pitch-alteration p)))
         ;; alteration, a, in quarter tone steps,
         ;; for historical reasons
         (n (ly:pitch-notename p)))
     (cond
      ((and (> a 1) (or (eqv? n 6) (eqv? n 2)))
       (set! a (- a 2))
       (set! n (+ n 1)))
      ((and (< a -1) (or (eqv? n 0) (eqv? n 3)))
       (set! a (+ a 2))
       (set! n (- n 1))))
     (cond
      ((> a 2) (set! a (- a 4)) (set! n (+ n 1)))
      ((< a -2) (set! a (+ a 4)) (set! n (- n 1))))
     (if (< n 0) (begin (set! o (- o 1)) (set! n (+ n 7))))
     (if (> n 6) (begin (set! o (+ o 1)) (set! n (- n 7))))
     (ly:make-pitch o n (/ a 4))))

#(define (naturalize music)
   (let ((es (ly:music-property music 'elements))
         (e (ly:music-property music 'element))
         (p (ly:music-property music 'pitch)))
     (if (pair? es)
         (ly:music-set-property!
          music 'elements
          (map naturalize es)))
     (if (ly:music? e)
         (ly:music-set-property!
          music 'element
          (naturalize e)))
     (if (ly:pitch? p)
         (begin
           (set! p (naturalize-pitch p))
           (ly:music-set-property! music 'pitch p)))
     music))

naturalizeMusic =
#(define-music-function (m)
   (ly:music?)
   (naturalize m))

music = \relative c' { c4 d e g }

\score {
  \new Staff {
    \transpose c ais { \music }
    \naturalizeMusic \transpose c ais { \music }
    \transpose c deses { \music }
    \naturalizeMusic \transpose c deses { \music }
  }
  \layout { }
}

[image of music]

Vegeu també

Referència de la notació: Transposició dels instruments, Inversió, Transformacions modals, Escriptura d’octava relativa, Retrogradació.

Fragments de codi: Pitches.

Referència de funcionament intern: TransposedMusic.

Advertiments i problemes coneguts

La conversió relativa no afecta a les seccions \transpose, \chordmode ni \relative dins del seu argument. Per usar el mode relatiu dins de música transportada, es pot col·locar un altre \relative dins de \transpose.

No s’imprimeixen alteracions accidentals triples quan s’usa \transpose. En lloc d’això, s’usarà una nota ‘equivalent enarmònicament’ (p.ex., Re bemoll en lloc de Mi triple bemoll).


Referència de la notació del GNU LilyPond v2.25.22 (development-branch).