M.I.R. Music Information Retrival

@danielgomezmarin:Pues en realidad es simple. Tomás un archivo de audio. Cualquiera (música, grabación de ambiente, de buena calidad, de mala calidad…) y lo analizás cada cierto tiempo.

Hay dos maneras: (1) o buscás 'onsets' o lugares donde hay cambios bruzcos de energía y/o espectrales tratando de marcar el audio cada que hay un 'evento'. (2) no te metés en problemas y lo analizás cada x tiempo constante.

Analizar significa encontrar características como energía, centroide del espectro, flatness del espectro, frecuencia fundamental, mfcc (muy útil en timbre)… cada cafacterística es un número o una lista de números, pero en general son pocas dimensiones.

Entonces del análisis quedan estos datos: Tiempo del análisis (ms) Valor característica 1, valor característica 2… valor característica n. Por cada tiempo de análisis tenés una fila con todos los datos. Todo queda en una matriz inicialmente ordenada ascendentemente por el tiempo.

Lo interesante es que podés ordenar esa matriz de acuerdo a cualquier columna (o característica de análisis) entonces los fragmentos que tienen valores similares quedan juntos.

Podés también ordenarlos todos los fragmentos dadas tres dimensiones y así hacer las visualizaciones que mostraste. El eje x puede ser la energía, el y el tiempo de ataque y el z algun descritpr espectral… o cualquier combinación.

Lo realmente interesante es que si seleccionás descriptores interesantes, para el material con el que estás trabajando, podrías tener un espacio en donde los fragmentos 'similares' están juntos y los 'diferentes' lejos.

Este espacio se llama timbre space o espacio tímbrico. Y se lo imaginaron en los 60s desde la fonética y en los 70s lo usaron para clasificar sonidos de una orquesta segun su timbre (ver los papers de grey y wessel). La idea era encontrar los 3 ejes 'fundamentales' de el timbre. Algo así como el RGB que pudiera usarse para describir y diferenciar el timbre de los sonidos. Pero se dieron cuenta que el timbre es muy muy complejo y no puede simplificarse en RGB (aunque hay un primer modelo muy bonito que se llama 'tristimulus' que va por esa onda de tres dimensiones). El asunto es que el timbre es dinámico en el tiempo, se compone de variaciones temporales del espectro… entonces es dificil de simplificar. Sin embargo, dicen que los mfcc son los descriptores que mas sirven para 'describir' el timbre o por lo menos para agrupar los sonidos similares. (Hay un super artículo de terasawa sobre esto. 'The 13 colors of timbre'). Lo malo de los mfcc es que si leen la descripción es algo poco intuitivo entonces son basicamente números pero nada que podamos relacionar claramente con nuestra percepción (es paradójico no? ).

Lo bacano del timbre space es que ofrece ese orden y puede usarse super bien para explorar sonoramente y visualmente un archivo de audio.

Lo que hacen en los videos que yo mandé es aprovecharse de esa estructura y analizar nuevos sonidos. Entonces se hace una búsqueda con esta pregunta '¿dadas las características de este fragmento de audio que entra, cual es el fragmento del timbre space que se parece mas?' Terminan siendo entonces preguntas de búsquedas en base de datos y algoritmos de cercanía o 'similaridad'.

Hay muchos mas detalles. Pero podemos ir conversando poco a poco. Los ejemplod de pd funncionan muy bien timbreID es la librería.