introducción a lilypond

Lilypond es un editor de partituras que -en principio- no utiliza GUI para poner las notas en su sitio. En su lugar trabajamos ficheros de texto en los que tenemos que describir con “palabras” los diferentes elementos de la pagina.

Por ejemplo, “London is Burning”:

score {
  \header {
    title = "London is burning"
  }
  \layout { }
  \midi { }
  \new Staff
  <<
    \set Staff.midiInstrument = #"cello"
    \clef "treble"
    \time 3/4
    \key g \major
    \relative c' {
      \repeat volta 2 { d8 d8 g4 g4 d8 d8 g4 g4 \breathe a8 a8 b4 b4 a8 a8 b4 b4 \breathe d4 d2 d4 d2 \breathe d8 c8 b4 b4 d8 c8 b4 b4 }
    }
   >>
}

Una vez “compilada” la partitura, el producto es un pdf, o un png, tan bonito como este:

londonisburning

Tambien produce ficheros MIDI, con los que escucharemos lo que hemos transcrito. Por ejemplo, London is Burning.

Lo interesante es que a la hora de definir las notas tenemos varios modos de funcionamiento: podemos decirle la altura exacta de cada una de ellas, partiendo del DO central del piano, “c” con apostrofes o comas para subir o bajar de octava, respectivamente. Pero tambien podemos usar el modo “relativo”, en el que, partiendo de la nota de referencia que queramos, la octava es calculada en cada nueva nota a partir de la nota anterior: será aquella en la que la distancia entre ambas notas sea menor de una quinta. Esto facilita mucho la escritura de las notas, y simplifica los ficheros “fuente”, que tienen menos información prescindible.

El ejemplo es sencillo, pero la potencia del programa permite hacer partituras orquestales, transcripciones de percusión, anotaciones de jazz… Cualquier cosa que se nos pueda ocurrir.

El manual, en castellano, esta aqui. Recomendable para  cualquiera que tenga que verselas con musica escrita.

…y qué ganamos con un software para escribir partituras basado en ficheros de texto? pues que podemos incorporar control de versiones en nuestro trabajo de edicion musical, y compartirlo en Github, por poner un caso. O podemos hacer que la salida de determinados algoritmos sean “notas” de forma que podamos hacer música basada en ellos… o usar nuestro lenguaje de programación favorito para hacer tratamiento automatizado de la información en partituras, buscando fraseos, alterando notas…

ah! y es multiplataforma: lo puedes instalar en cualquier ordenador.

publicado en el foro del HacklabAlmeria, donde sigue la conversacion…