El Music Technology Group de la Universitat Pompeu Fabra de Barcelona lleva mucho tiempo trabajando en CLAM, un framework para investigación y desarrollo de actividades relacionadas con el audio y la música. Alrededor de este framework, programado en C++ se ha construido una serie de aplicaciones, como Voice2MIDI o Annotator, que permiten el análisis de ficheros de audio.
Precisamente de esta última vamos a hablar, ya que ha levantado bastante expectación por su capacidad para analizar una canción y reconocer los acordes que suenan en ella. Esto, que sonará estupendamente a aquellos músicos aficionados con no muy buen oído (como yo), no es una tarea fácil, así que vamos a ver con un ejemplo como hacerlo y si realmente funciona bien.
En primer lugar nos bajaremos las librerías externas y el propio programa CLAM Annotator desde la página de descargas y los instalaremos. Una vez instalados, lo mejor es seguir las instrucciones del wiki, aunque desde aquí también le daremos un repaso.
Ejecutamos el programa y abrimos el proyecto Chords.pro, del cual podemos quitar las canciones que lleva por defecto. Añadimos las canciones que queramos analizar desde el menú Project -> Add song to project. Seleccionamos la canción, momento en el que dará un error de que no encuentra el descriptor y que podemos ignorar.
Una vez añadida la analizamos desde el menú Song -> Reload descriptors y, una vez finalice, recargamos los datos desde Song -> Reload descriptors. Ya podemos pasar a la pestaña Intrasong Descriptors, donde podremos ver los datos que ha obtenido el programa tras el análisis.
¿Ha funcionado correctamente CLAM Annotator en nuestro caso? Lo hemos probado con la canción American Idiot de Green Day y este ha sido el resultado (conviene usar el zoom para ver los datos mejor).
El programa nos ha indicado la siguiente serie de acordes: G#, C#, F#, C# y F#. Como conocíamos previamente los acordes de esta canción, que se grabó como G#, C#, F#, C#, G# y F#, (tocada como A, D, G, D, A y G en una guitarra afinada medio tono hacia abajo) vemos que ha faltado un acorde por analizar, aunque suena tan poco que tampoco es de extrañar que el programa no lo haya reconocido.
La siguiente prueba la hacemos con Knocking on heaven's door, versión de Guns'n'Roses del clásico de Bob Dylan, obteniendo el siguiente resultado.
En esta ocasión, los acordes que nos indica el programa son: F#, C# y B, acordes correctos respecto a la canción original que se tocaba como A, D y C en una guitarra también afinada medio tono hacia abajo. Otro acierto para CLAM Annotator.
Es cierto que no siempre el programa funciona tan estupendamente, pues con alguna canción he tenido problemas en los resultados, probablemente por mi falta de práctica con el programa, pero desde luego CLAM promete y mucho.
¿Alguno de vosotros se anima a probarlo y comentarnos que tal le ha ido?
Más información | CLAM.
Ver 9 comentarios