sábado, 17 de abril de 2010

CLAM Chordata: interesante aplicación para visualizar acordes

CLAM Chordata es una aplicación de código abierto creada por el grupo catalán CLAM, que significa, según J_hash, "Biblioteca C++ de Audio y Música" (en inglés C++ Library for Audio and Music).

Se trata de uno de los últimos descubrimentos de Musical Wars, es algo a lo que puedo darle mucha utilidad, y por eso he decidido descargar la aplicación e intentar instalarla en Ubuntu (de momento, sin éxito), aunque también es posible hacerlo en Windows y en un Mac (OSX).

En esencia, este programa lo que hace es obtener una lectura de acordes partiendo de un archivo de audio (admite formatos wav, mp3 y ogg), por ejemplo, una canción completa, y puedes visualizarlos en una línea del tiempo, mientras la reproduces. Es ideal para, por ejemplo, aprenderte de manera rápida esa canción que tanto te gusta, o para recordar qué acordes tocaste en aquella interesante idea que grabaste hace tiempo.

En este vídeo lo veréis en acción:


Lamentablemente, aunque ya lo he dicho arriba de pasada, no he logrado instalar Chordata en Ubuntu, al menos en el amd64. Incluso he llegado a actualizar ese ordenador a Karmic Koala (en breve, entrada al respecto), para tener al día las librerías, pero no ha servido de nada.

Esperaré a la liberación oficial de Lucid Lynx para volver a intentarlo. Mientras tanto, puedo hacer uso de él en el lado oscuro del ordenador, pues ahí sí que lo he instalado y hecho funcionar sin problemas. La captura de pantalla de más arriba da fe de ello.

10 comentarios:

  1. Te acabo de leer en el Reader y solo decirte, que encuentro es un fantástico programa, la demo en el vídeo me ha convencido, asi que sera muy grato publicarlo en el blog de Carlos Santías, una aplicación más para los aficionados a la música. Un abrazo José GDF!

    ResponderEliminar
  2. "Te acabo de leer en el Reader..." ¿No será que me acabas de leer la mente, Carlos? Te iba a comentar esto en un rato, pensando precisamente en tu blog de Carlos Santías.

    Pues publícalo, y recalca el hecho de que este programa es made in Spain, concretamente en Cataluña ;)

    Otro abrazo para tí :H

    ResponderEliminar
  3. Jajaja, bueno ya esta programado, razón tienes, me he olvidado de promocionar un programa de aquí, ahora lo añado. Gracias por este gran descubrimiento. A nadie se le va a escapar tu blog pues la referencia de tu nombre es llamativo y no he abreviado.

    ResponderEliminar
  4. Hola José, he conseguido compilar chordata en ubuntu karmic. Creo que en Lucid será más sencillo porque espero que portaudio ya venga con soporte para jack. Y además con un poco de suerte ya lo tendremos compilado en algún PPA. Veremos. Dejo mis apuntes con lo que fui haciendo. Hay que compilar clam, después network editor y después chordata. Ya tenía algunas librerías de desarrollo instaladas, pero bueno, ya dirá el scons el error en caso de que falte algo más de lo que me faltó a mí.

    Mis apuntes:

    clam
    http://clam-project.org/download/src/
    clam 1.4

    scons --help
    me pide xerces header, instalo libxerces-c2-dev
    Checking for uncompress() in C library z... no
    Could not link zlib. Please, check your zlib/id3lib installation
    Instalo libid3-3.8.3-dev

    Checking for Pa_GetHostApiInfo() in C library portaudio... no
    Could not find portaudio binary v19 or higher! (v18 wont work) Please check your portaudio installation

    sudo add-apt-repository ppa:motin/until-jack-is-included-in-main
    sudo apt-get update
    sudo apt-get install portaudio19-dev

    scons
    sudo scons install
    éxito

    network editor

    scons
    sudo scons install
    éxito

    chordata

    scons prefix=/usr/local clam_prefix=/usr/local
    sudo scons install
    éxito

    pablo@Desktop:~/fuentes/chordata-1.0.0$ chordata
    chordata: error while loading shared libraries: libclam_qtmonitors.so.1.4: cannot open shared object file: No such file or directory

    pablo@Desktop:~/fuentes/chordata-1.0.0$ sudo ln -s /usr/local/lib/libclam_qtmonitors.so.1.4 /usr/lib/libclam_qtmonitors.so.1.4


    pablo@Desktop:~/fuentes/chordata-1.0.0$ chordatachordata: error while loading shared libraries: libclam_audioio.so.1.4: cannot open shared object file: No such file or directory

    pablo@Desktop:~/fuentes/chordata-1.0.0$ sudo ln -s /usr/local/lib/libclam_audioio.so.1.4 /usr/lib/libclam_audioio.so.1.4

    pablo@Desktop:~/fuentes/chordata-1.0.0$ chordata
    chordata: error while loading shared libraries: libclam_processing.so.1.4: cannot open shared object file: No such file or directory

    pablo@Desktop:~/fuentes/chordata-1.0.0$ sudo ln -s /usr/local/lib/libclam_processing.so.1.4 /usr/lib/libclam_processing.so.1.4

    pablo@Desktop:~/fuentes/chordata-1.0.0$ chordata
    chordata: error while loading shared libraries: libclam_core.so.1.4: cannot open shared object file: No such file or directory

    pablo@Desktop:~/fuentes/chordata-1.0.0$ sudo ln -s /usr/local/lib/libclam_core.so.1.4 /usr/lib/libclam_core.so.1.4

    pablo@Desktop:~/fuentes/chordata-1.0.0$ chordata
    Audio backend: JACK
    Precomputing KeySpace weights... done

    :) :) :)

    ResponderEliminar
  5. ¡Vaya! Eso es justo lo que me sale a mi cuando intento arrancar el programa desde la linea de comandos:

    gdf@gdf-estudio:~$ chordata
    chordata: error while loading shared libraries: libQtSvg.so.4: cannot open shared object file: No such file or directory

    Acabo de intentar todo lo que has apuntado después a ver si me consigue arrancar. Pero sigue sin hacerlo... Supongo que tendrá que ver algo que el ordenador donde lo he intentado (el del estudio) es un amd64, e instalé algunas dependencias forzando la arquitectura. Igual tengo mejor suerte con el portátil.

    Gracias por tus apuntes, es muy posible que esas declaraciones de enlaces simbólicos me sirvan muy pronto. :)

    ResponderEliminar
  6. Lo voy a dejar correr. Me ha dejado de salir ese fallo, pero me están saliendo otros. Demasiado largo de explicar y ni siquiera sé cómo he llegado hasta ese punto. Me rindo. Ya lo intentaré con Lucid.

    Gracias por tu ayuda, Pablo. :(

    ResponderEliminar
  7. ¡Hola José! A ver si tienes más suerte. Yo lo que hago cuando me dice que no encuentra un librería, lo que hago es buscarla con locate:

    Por ejemplo:

    sudo updatedb
    locate libQtSvg.so.4

    Si no encuentra nada, pues está claro que no está, pero a veces puede existir en una ruta en la que el programa no la espera, típicamente, un programa la puede esperar en /usr/lib/ y resulta que está en /usr/local/lib. Entonces, lo puedes solucionar haciendo un enlace blando, con

    ln -s archivo-existente enlace

    ln -s /usr/local/lib/foo/foo2.so /usr/lib/foo/foo2.so

    En general, esto no debería ocurrir. La verdad es que no lo han puesto muy fácil para compilar o bien yo me estoy haciendo un buen lío con algo que no alcanzo a ver.

    Claro, que yo he probado en 32 bits. En x86_64 puede haber otros problemas añadidos, no tengo ni idea.

    A ver si alguien saca binarios para este gran programa. Yo lo tengo funcionando y es flipante aunque con "change of ideas" de Bad Religion se vuelve bastante loco. Lo del video es flipante.

    De nada y felicidades por tu gran blog.

    ResponderEliminar
  8. Sí que es verdad que para amd64 la cosa se complica bastante. Y más cuando unas dependencias sólo están disponibles en i386, con lo que toca forzar arquitectura y, por tanto, es muy fácil que algo no salga bien.

    Mi portátil es un i386, supongo que no tendré tantos problemas, aunque antes debería actualizarlo también a Karmic.

    Voy a tomar buena nota de todo lo que me estás apuntando aquí, a ver si aprendo algo de una vez. ;)

    ResponderEliminar
  9. Wow, ese programa tiene una pinta increíble... si no lo he entendido mal, ya no tendría que tirarme horas buscando tablaturas ni resignarme cuando no las encuentro. Le metes un mp3 y listo, ¿no? ¡Menudo chollo! :)

    Por desgracia, viendo los comentarios anteriores, creo que no voy ni a intentar ponerlo en mi 8.04. Pondré velas a la virgen por que alguien haga un .deb (xD), o al menos algo facilito de compilar. Mientras tanto, creo que me haré con la versión para Windows, y le secuestraré el ordenador a mi hermano.

    Un saludo!

    ResponderEliminar
  10. Seiseises, ¿a qué esperas para actualizarte? De aquí a nada se acaba el soporte técnico a tu versión de Ubuntu, y se acabarán las actualizaciones de seguridad entre ellas... :S

    Por otro lado, si te actualizas, como mínimo a Karmic, y tienes un ordenador basado en i386, puedes, en principio, instalarlo sin problemas con los .deb de esta página de descargas de CLAM Chordata.

    Pero si tienes un amd64, como yo, y además estás todavía en 8.04, pues lo tienes un poco mal... También intenté instalar la versión de Windows con Wine, pero el programa no funciona nada bien así. :(

    En efecto, te saca los acordes, en cifrado armónico, simplemente metiendo en el programa un .wav, un .mp3 o un .ogg. Pero para llevarlo al mástil de una guitarra, para eso hay que saber un poco, y usar un poco el oído también.

    Otro saludo para ti. ;)

    ResponderEliminar

No hay normas especiales para publicar comentarios en este blog. Sólo las básicas: respeta, no insultes, y no hagas SPAM descaradamente. Tampoco se admitirán comentarios que vulneren la Ley. Cualquier aportación, consulta y crítica es bienvenida, a condición de cumplir estas normas básicas.

Si lo que quieres es ponerte en contacto directamente conmigo, dispones para ello de un formulario de contacto.