De wav a midi con Aubio

--474219--
#1 por --474219-- el 06/04/2015
Llevaba tiempo intentando conseguir una aplicación que reconociera las notas y las convirtiera en dato midi para poder utilizar la guitarra a modo de teclado para utilizar el sintetizador zynaddsubfx.

Aunque tanto rakarrack, como guitarix pueden hacerlo, los resultados que obtenía no eran de mi agrado, hasta que he descubierto Aubio, una aplicación basada en pure data, que entre otras cosas lo logra hacer de una manera más eficiente.

Aubionotes es la utilidad en concreto que logra la conversión en tiempo real y sin latencia apreciable, de sonido a nota midi, con el enorme abanico de posibilidades que se abre a la hora de conseguir nuevos sonidos tocando la guitarra, utilizando el banco de sonidos de zynaddsubfx, creando sonidos nuevos o mezclando sonidos de rakarrack o guitarix con los de zynaddsubfx.

Dado que no sé muy bien como he conseguido instalar Aubio :roll: , ni tengo un dominio del ingles, tanto la instalación, como el descubrimiento de Aubio lo he hecho con la ayuda del traductor de google ](*,) , si algún hispasonico se ofrece para ampliar información...

http://aubio.org/

Mañana subiré un archivo con los sonidos que he ido probando
Subir
--474219--
#2 por --474219-- el 07/04/2015
Bueno os traigo una grabación rápida, he utilizado rakarrack y zynaddsubfx ( con tres instrumentos a la vez). Dos pequeñas muestras cambiando los preset de sonido en zynaddsubfx

He utilizado una guitarra acústica , la interfaz guitar link ucg102 de behringer y la aplicación aubionotes.
Archivos adjuntos:
Subir
--474219--
#3 por --474219-- el 07/04/2015
Amplio la información

Una de las utilidades incluidas en la suite Aubio es aubionotes, que entre sus funciones esta la de reconocer la frecuencia de los sonidos, y lo traduce en dato midi. Prácticamente lo hace en tiempo real.

Aubionotes trabaja desde el terminal, tiene varias opciones, pero en este caso lo he utilizado sin parámetros, únicamente escribiendo en la terminal aubionotes, informándonos en este caso que se han abierto dos canales de audio, uno de entrada y otro de salida, y un canal midi, este únicamente de salida.

Que hacer a continuación, con jack ya iniciado con anterioridad y los demás programas de sonido con los que queramos interactuar, se realizan las conexiones pertinentes.

En ese ejemplo he utilizado una guitarra acústica, la interfaz de sonido ucg102 de behringer, rakarrack y zynaddsubfx.

Las conexiones que he realizado han sido las siguientes:

Entrada de audio ( guitarra) canal izquierdo solo, conectado por una parte a la entrada de audio de Aubio y por otra parte a la entrada de audio de rakarrac.
Salida de rakarrack a reproducir ( altavoces )
Salida midi de aubio a entrada de zynaddsubfx.
salida de zynaddsubfx a reproducir ( altavoces )

De esta manera la misma señal de entrada, la de la guitarra acústica, la envío a la vez a rakarrack y a aubio-zymaddsubfx, y cada uno procesa y envia los resultados a los altavoces.

En rakarrac he utilizado un preset de distorsión, en las dos muestras grabadas, mientras que he variado los instrumentos en zynaddsubfx en cada una de las tomas, a tener en cuenta que en las dos tomas he utilizado tres instrumentos a la vez en el sintetizador, sin cambiar parámetros de los mismos ni usar el mezclador.

Dado que hay gran cantidad de instrumentos en los diferentes bancos de zynaddsubfx, además de los que pueda uno configurar, las posibilidades de conseguir diferentes sonidos es enorme.
Subir
--474219--
#4 por --474219-- el 13/04/2015
Además de poder conseguir nuevos sonidos con la guitarra, añadiendo sonidos gracias a la interacción de guitarra y notas midi ( y en consecuencia que suenen uno o más instrumentos virtuales o generados por sintetizador ), este fin de semana he realizado un sencillo experimento, que suene el acorde mayor o menor de la nota tocada en la guitarra.

He utilizado el zynaddsubfx de la siguiente manera:

He habilitado seis instrumentos en el sinte, todos ellos reciben la nota midi por el canal 1. Los tres primeros van a sonar formando el acorde mayor, los otros tres el acorde menor.

Evidentemente no pueden sonar los seis a la vez, y eso lo he logrado estratificando los instrumentos, los tres primeros solo van a sonar cuando la nota sea menor al valor correspondiente a 60 en parámetros midi, que corresponde a el do que suena cuando tenemos apretado el primer traste de la segunda cuerda, mientras que los otros tres van a sonar desde ese do en adelante.
Con ello conseguimos por ejemplo que tocando el do ( cuerda 5 traste 3), suena el acorde do mayor, y tocando el do anteriormente citado ( cuerda 2 traste 1), suena do menor.

Esa estratificación planteaba un problema, ya que habría una octava de diferencia entre el acorde mayor y menor, la solución ha sido sencilla, bajar una octava (12 semitonos) el valor la nota cuando deben sonar los acordes menores.

La configuración de los instrumentos ha sido la que sigue:

instrumento 1 reproduce la nota de la guitarra (fundamental)
instrumento 2 reproduce 5 semitonos menos que la nota de la guitarra (quinta)
instrumento 3 reproduce 4 semitonos más que la nota de la guitarra (tercera mayor)

En efecto he configurado un acorde mayor invertido, podía haber configurado siendo la fundamental la más grave, o cualquier otra inversión, pero esa ha sido mi decisión.


instrumento 4 reproduce 12 semitonos menos que la nota de la guitarra (fundamental)
instrumento 5 reproduce 17 semitonos menos que la nota de la guitarra (quinta)
instrumento 6 reproduce 9 semitonos menos que la nota de la guitarra (tercera menor)

Igual proceso que para los acordes mayores, pero bajando una octava (12 semitonos)

Abajo os dejo una muestra de audio de dos configuraciones de instrumentos y los parámetros de zynaddsubfx, para cargarlos ( File > Open Parameters ), la primera es la configuración de cuerdas y metales, la segunda es la de efectos.
Subir
Respuesta rápida

Regístrate o para poder postear en este hilo