3.1.2 Matices dinámicos

Las marcas dinámicas de matiz absoluto se especifican usando una instrucción después de una nota: c4\ff. Las marcas dinámicas disponibles son \ppppp, \pppp, \ppp, \pp, \p, \mp, \mf, \f, \ff, \fff, \ffff, \fffff, \fp, \sf, \sff, \sp, \spp, \sfz, \rfz y \n. Las indicaciones dinámicas se pueden colocar manualmente por encima o por debajo del pentagrama; para ver más detalles, consulte Dirección y posición.

\relative c'' {
  c2\ppp c\mp
  c2\rfz c^\mf
  c2_\spp c^\ff
}
[image of music]

Una indicación de crescendo se comienza con \< y se termina con \!, con un matiz absoluto o con otra indicación de crescendo o de decrescendo. Una indicación de decrescendo comienza con \> y se termina también con \!, con un matiz dinámico absoluto o con otra indicación de crescendo o de decrescendo. Se pueden usar \cr y \decr en lugar de \< y \>. También es posible usar \endcr y \enddecr en lugar de \! para finalizar un crescendo o un decrescendo, respectivamente. De forma predeterminada, se tipografían reguladores en ángulo cuando se utiliza esta notación.

\relative c'' {
  c2\< c\!
  d2\< d\f
  e2\< e\>
  f2\> f\!
  e2\> e\mp
  d2\> d\>
  c1\!
}
[image of music]

Un regulador terminado mediante \! finaliza en el borde derecho de la nota que lleva el \! adosado. En el caso en que esté terminado con el comienzo de otra indicación crescendo o decrescendo, terminará en el centro de la nota que tiene adosada la siguiente indicación \< ó \>. El regulador siguiente empezará entonces en el borde derecho de la misma nota en lugar del borde izquierdo, como sería usual si hubiese terminado con \! previamente. Si un regulador termina en el inicio de un compás, finalizará sobre la línea divisoria precedente.

\relative {
  c''1\< | c4 a c\< a | c4 a c\! a\< | c4 a c a\!
}
[image of music]

Los reguladores que terminan con indicaciones dinámicas absolutas en lugar de con \! también se tipografían de manera parecida. Sin embargo, la longitud de la propia indicación dinámica puede alterar el punto en que finaliza el regulador anterior.

\relative {
  c''1\< | c4 a c\mf a | c1\< | c4 a c\ffff a
}
[image of music]

Con frecuencia, las marcas como crescendo o decrescendo deben comenzar o terminar en el mismo instante temporal dentro de la duración de una nota sostenida. Esto se puede conseguir con \after, que se puede usar también para crear articulaciones o inscripciones de texto retrasadas:

<<
  \relative {
    \after 2 \< c'1
    d4\f\> e f g
    \after 2. \pp c,1
    \after 2. \fermata e
    \after 2. ^"Fine." f
  }
  \relative {
    \repeat unfold 12 c'4
    c c c c\fermata
    c c c c
  }
>>
[image of music]

Se pueden usar varias instancias de \after para tipografiar varias indicaciones dinámicas sobre una sola nota. Esto es útil especialmente para añadir un crescendo y un decrescendo a la misma nota:

\relative {
  c''4\< d\! e\> c\!
  \after 4 \< \after 2\> \after 2. \! f1
  \textLengthOn
  \after 4 \> \after 2. ^"hush!" c1
  g4\pp
}
[image of music]

Si la primera de dicha secuencia de marcas sobre una única nota se supone que debe coincidir con el ataque de la nota, es conveniente adjuntarla a un acorde vacío <>. De esta manera, todas las marcas se pueden introducir en su orden visual natural:

{
  <>\< \after 4 \> \after 2 \! c'1
  % easier to write and read than:
  \after 4 \> \after 2 \! c'1\<
}
[image of music]

También se puede usar la instrucción \espressivo para indicar un crescendo y un decrescendo sobre la misma nota. Sin embargo, advierta que esta indicación está implementada como una articulación, no como una expresión dinámica.

\relative {
  c''2 b4 a
  g1\espressivo
  \after 2. \espressivo c
}
[image of music]

Las indicaciones de crescendo textuales se inician con \cresc. Los decrescendos textuales se inician con \decresc o con \dim. Se trazan líneas extensoras cuando es necesario.

\relative {
  g'8\cresc a b c b c d e\mf |
  f8\decresc e d c e\> d c b |
  a1\dim ~ |
  a2. r4\! |
}
[image of music]

También pueden sustituirse los reguladores gráficos por cambios de dinámica textuales:

\relative c'' {
  \crescTextCresc
  c4\< d e f\! |
  \dimTextDecresc
  g4\> e d c\! |
  \dimTextDecr
  e4\> d c b\! |
  \dimTextDim
  d4\> c b a\! |
  \crescHairpin
  \dimHairpin
  c4\< d\! e\> d\! |
}
[image of music]

Para crear nuevas indicaciones de matiz absoluto o de texto que deba alinearse con los matices; véase Indicaciones dinámicas nuevas.

La colocación vertical de las indicaciones de dinámica se maneja por parte de DynamicLineSpanner.

Está disponible un contexto Dynamics para tipografiar las indicaciones de matiz dinámico en su propia línea horizontal. Utilice silencios de separación para indicar los tiempos (las notas que están dentro de un contexto Dynamics también ocupan tiempo musical, pero no se imprimen). El contexto Dynamics puede contener otros elementos como inscripciones textuales, objetos extensores de texto e indicaciones de pedal de piano.

<<
  \new Staff \relative {
    c'2 d4 e |
    c4 e e,2 |
    g'4 a g a |
    c1 |
  }
  \new Dynamics {
    s1\< |
    s1\f |
    s2\dim s2-"rit." |
    s1\p |
  }
>>
[image of music]

Nota: Incluso si solo hay una única indicación dinámica absoluta como \p en toda la partitura, LilyPond siempre crea dos objetos para ella, un objeto DynamicText y un objeto DynamicLineSpanner, y las propiedades para controlar la indicación dinámica se comparten entre los dos objetos. Por ejepmlo, el tamaño se puede cambiar con la propiedad DynamicText.font-size, mientras que la posición vertical se controla por medio de DynamicLineSpanner.Y-offset.

Como consecuencia, un código como

\tweak font-size 5 \p

funciona, pero

\tweak Y-offset 5 \p

no funciona. Tenemos de escribir

\tweak DynamicLineSpanner.Y-offset 5 \p

en su lugar.

Instrucciones predefinidas

\dynamicUp, \dynamicDown, \dynamicNeutral, \crescTextCresc, \dimTextDim, \dimTextDecr, \dimTextDecresc, \crescHairpin, \dimHairpin.

Fragmentos de código seleccionados

Establecer el comportamiento de los reguladores en las barras de compás

Si la nota que da fin a un regulador cae sobre la primera parte de un compás, el regulador se detiene en la línea divisoria inmediatamente precedente. Se puede controlar este comportamiento sobreescribiendo la propiedad 'to-barline.

\relative c'' {
  e4\< e2.
  e1\!
  \override Hairpin.to-barline = ##f
  e4\< e2.
  e1\!
}
[image of music]

Ajustar la longitud mínima de los reguladores

Si los reguladores son demasiado cortos, se pueden alargar modificando la propiedad minimum-length del objeto Hairpin.

<<
  {
    \after 4 \< \after 2 \> \after 2. \! f'1
    \override Hairpin.minimum-length = 8
    \after 4 \< \after 2 \> \after 2. \! f'1
  }
  {
    \repeat unfold 8 c'4
  }
>>
[image of music]

Alinear los extremos de los reguladores con las direcciones de NoteColumn

Se pueden alinear los extremos de los reguladores con los puntos izquierdo, central o derecho de los objetos gráficos NoteColumn por medio de la sobreescritura de la propiedad endpoint-alignments, que es una pareja de números que representan los extremos izquierdo y derecho de un regulador. Se espera que los endpoint-alignments sean direcciones (-1, 0 o 1). Cualquier otro valor se transforma acompañado de una advertencia. La derecha de un regulador que termina en un silencio no resulta afectada, terminando siempre en el borde izquierdo del silencio.

{
  c'2\< <c' d'>\! |
  \override Hairpin.endpoint-alignments = #'(1 . -1)
  c'2\< <c' d'>\! |
  \override Hairpin.endpoint-alignments = #`(,LEFT . ,CENTER)
  c'2\< <c' d'>\! |
}
[image of music]

Desplazar los extremos de un regulador

Se pueden desplazar los extremos de los reguladores fijando la propiedad shorten-pair del objeto Hairpin. Los valores positivos mueven los extremos hacia la derecha, los negativos hacia la izquierda. A diferencia de la propiedad minimum-length, esta propiedad afecta solo a la apariencia del regulador; no ajusta el espaciado horizontal (incluida la posición de los matices circundantes). Este método es así adecuado para el ajuste fino de un regulador dentro del espacio de que dispone.

{
  c'1~\<
  c'2~ c'\!
  \once \override Hairpin.shorten-pair = #'(2 . 2)
  c'1~\<
  c'2~ c'\!
  \once \override Hairpin.shorten-pair = #'(-2 . -2)
  c'1~\<
  c'2~ c'\!
  c'1~\p-\tweak shorten-pair #'(2 . 0)\<
  c'2~ c'\ffff
}
[image of music]

Impresión de reguladores utilizando la notación «al niente»

Se pueden imprimir reguladores con un círculo en la punta (notación «al niente») estableciendo la propiedad circled-tip del objeto Hairpin al valor #t.

\relative c'' {
  \override Hairpin.circled-tip = ##t
  c2\< c\!
  c4\> c\< c2\!
}
[image of music]

Imprimir reguladores en diversos estilos

Los reguladores se pueden crear en una amplia variedad de estilos.

\paper { tagline = ##f }

\relative c'' {
  \override Hairpin.stencil = #flared-hairpin
  a4\< a a a\f
  a4\p\< a a a\ff
  a4\sfz\< a a a\!
  \override Hairpin.stencil = #constante-hairpin
  a4\< a a a\f
  a4\p\< a a a\ff
  a4\sfz\< a a a\!
  \override Hairpin.stencil = #flared-hairpin
  a4\> a a a\f
  a4\p\> a a a\ff
  a4\sfz\> a a a\!
  \override Hairpin.stencil = #constante-hairpin
  a4\> a a a\f
  a4\p\> a a a\ff
  a4\sfz\> a a a\!
}
[image of music]

Indicaciones dinámicas y textuales alineadas verticalmente

Todos los objetos DynamicLineSpanner (reguladores e indicaciones dinámicas de texto) se sitúan con su línea de referencia a una distancia de al menos 'staff-padding del pentagrama, a no ser que otros elementos de notación los fuerce a colocarse a más distancia. Si se ajusta 'staff-padding a un valor suficientemente grande, las indicaciones dinámicas quedarán alineadas.

Se usa una idea similar junto a \textLengthOn para alinear las inscripciones de texto a lo largo de su línea de base.

music = \relative c' {
  a'2\p b\f
  e4\p f\f\> g, b\p
  c2^\markup { \huge gorgeous } c^\markup { \huge fantastic }
}

{
  \music
  \break
  \override DynamicLineSpanner.staff-padding = 3
  \textLengthOn
  \override TextScript.staff-padding = 1
  \music
}

\paper { tagline = ##f }
[image of music]

Desalinear indicaciones dinámicas y textuales verticalmente

De forma predeterminada, LilyPond usa ojetos gráficos DynamicLineSpanner para alinear verticalmente objetos de matiz dinámico sucesivos como reguladores y dinamicas textuales. Sin embargo esto no siempre es deseable. Insertando \breakDynamicSpan, que finaliza el objeto extenso de alineamiento de forma prematura, se puede evitar este alineamiento vertical.

{ g1\< |
  e''\f\> |
  c'\p }

{ g1\< |
  e''\breakDynamicSpan\f\> |
  c'\p }

\paper { tagline = ##f }
[image of music]

Ocultar la línea de extensión de las expresiones textuales de dinámica

Los cambios de dinámica con estilo de texto (como cresc. y dim.) se imprimen con una línea intermitente que muestra su alcance. Esta línea se puede suprimir de la siguiente manera:

\relative c'' {
  \override DynamicTextSpanner.style = #'none
  \crescTextCresc
  c1\< | d | b | c\!
}
[image of music]

Cambiar el texto y los estilos de objeto de extensión para las indicaciones dinámicas textuales

Se puede modificar el texto empleado para los crescendos y decrescendos modificando las propiedades de contexto crescendoText y decrescendoText.

El estilo de la línea de extensión se puede cambiar modificando la propiedad 'style de DynamicTextSpanner. El valor predeterminado es 'dashed-line (línea discontinua), y entre otros valores posibles se encuentran 'line (línea), 'dotted-line (línea de puntos) y 'none (nada):

\relative c'' {
  \set crescendoText = \markup { \italic { cresc. poco } }
  \set crescendoSpanner = #'text
  \override DynamicTextSpanner.style = #'dotted-line
  a2\< a
  a2 a
  a2 a
  a2 a\mf
}
[image of music]

Véase también

Glosario musical: al niente, crescendo, decrescendo, hairpin.

Manual de aprendizaje: Articulaciones y matices dinámicos.

Referencia de la notación: Dirección y posición, Indicaciones dinámicas nuevas, Enriquecimiento de la salida MIDI, Control de las dinámicas del MIDI.

Fragmentos de código: Expressive marks.

Referencia de funcionamiento interno: DynamicText, Hairpin, DynamicLineSpanner, Dynamics.


Referencia de la notación de GNU LilyPond v2.25.30 (development-branch).