¿Cómo shazam y youtube saben qué canción está sonando? – INVESTIGACIÓN DATLAS

Los tiempos de trabajar en casa por COVID-19 han hecho que mejores nuestros espacios de trabajo. Entre lo más buscado: Sillas ergonómicas, aromatizantes, iluminación, termos para café, entre otros. Todo lo necesario para tener un buen ambiente que motive al trabajo… pero ¿Y lo qué escuchamos?

Algunas comunidades en spotify y en otras plataformas han generado «playlist» o listas musicales para escuchar mientras trabajamos. Estilos como lo-fi, jazz o música clásica es lo que más suena. Pero cuando nos encanta una canción que te gusta ¿Cómo identificarla para guardarla? Seguramente has escuchado de SHAZAM, esta app que compró Apple que tiene uno de los mejores algoritmos para detección de música.

En esta columna, motivados por el vídeo de Jaime Altozano, compartiremos un poco de cómo funciona este tipo de sistemas que te detectan música que hoy usa Apple, Android o Youtube para detectar canciones.

Sonido en imágenes, El espectrograma

Un espectrograma es una representación visual de una frecuencia de una señal que varía con el tiempo. Los ejes utilizados para plasmar estas señales en un plano cartesiano son el tiempo y la frecuencia. En concreto entre más alta sea la frecuencia más agudo será el sonido y entre más baja será más grave.

El encuentro en un punto dentro del gráfico entre el tiempo y la frecuencia genera una «coordenada». Esto quiere decir que con este recurso podemos convertir sonido en datos. Cuando esto se trata de una canción pensemos que funciona como una «huella digital». Cada canción tendrá una combinación única y distintiva que permitiera reconocerla entre el universo musical que existe

Detección de patrones en espectrograma

Considerando la publicación de Avery Wang, creador de Shazam y quién publicó un «paper» científico para explicar cómo funciona el sistema, la detección ocurre contrastando los datos de canciones recopiladas en espectrogramas con una base de datos previamente procesada.

Para que el procesamiento sea lo más ágil posible de cada registro musical se almacenan los máximos locales y son estos puntos los que se contrastan con la base de datos.

La detección sistemática por Avery Li-Chun Wang (Creador de Shazam)

La detección sistemática planteada en el método de Avery Wang finalmente sucede gracias a la conversión de estos registros a «hashes» únicos por canción. Esto vuelve más ágil las conexiones y búsquedas en bases de datos. Así mismo aproxima el parecido de una canción a otras ya que los hashes pueden ser construidos similares entre los primeros caracteres por la similitud de las canciones.

La clave del éxito, «la velocidad»

Para trabajar el problema de la velocidad, es decir, para que verdaderamente este sistema fuese de utilidad debería detectar e identificar la canción de una manera relativamente ágil. Tal vez en unos 20 ó 30 segundos .

Esto lo resolvió usando como punto de partida otros identificadores que permitirían una búsqueda más ágil. En este sentido realizó el cálculo de las distancias entre una frecuencia y otra. En ese sentido tendríamos 3 variables para cada segundo se sonido: El tiempo en el que suena determinada frecuencia y la brecha que hay entre esa frecuencia y la contigua.

Esto, sin duda, hace que el esfuerzo de detección de coincidencias entre la música sea menos dependiente en poder procesamiento y más dependiente en capacidad de almacenamiento. Pero ¿Sabes qué sí se logra? Que sea más ágil y rápido.

Documentación Completa

Te compartimos esta charla de una hora por Peter Sobot del equipo de Shazam donde explican más a detalle el sistema

Cierre

El desarrollo de Shazam fue un punto de partida para muchas investigaciones nuevas sobre detección de sonidos. Hoy en día plataformas como YOUTUBE identifian si usas o no una canción con licencia gracias a este tipo de sistemas. O por ejemplo, la NASA, tiene proyectos que almacenan sonidos geo-referenciados de cualquier parte del mundo. También hay aplicativos que almacenan y detectan sonidos de pájaros para decirte a qué especie estás escuchando.

Estas y otras aplicaciones son facilitadas gracias a lógicas como la desarrollada por Avery Wang ¿Se te ocurre otra aplicación? ¿En qué otra plataforma crees que hayas utilizado este tipo de tecnologías? Déjanos tus comentarios en @DatlasMX o redes sociales para poder complementar este diálogo

Equipo Datlas

– Keep it weird –

Fuentes: