Com funcionen les apps que reconeixen cançons, com Shazam?

Espectrograma

Shazam i companyia s'han convertit en unes d'aquelles aplicacions més sorprenents que podem portar a un smartphone. I no és que no siguin famoses, perquè ja les coneix tothom, sinó que encara segueix semblant gairebé màgia que siguin capaços de reconèixer quina cançó està sonant a cada moment. Vegem com funcionen en realitat les aplicacions com Shazam.

Espectrografia, el pilar essencial

En realitat, aquestes aplicacions es basen en allò que coneixem com a espectrografia, o espectroscòpia, és a dir, al conjunt de coneixements relatius a l'anàlisi espectroscòpic. I amb aquestes paraules pot ser difícil d'entendre però ho explicarem en un moment. Quan es produeix qualsevol so, nosaltres el podem sentir perquè les partícules que es troben entre nosaltres i la font d'aquest so es mouen, vibren. Quan diem que aquestes partícules es mouen, ens referim al fet que generen ones, que van d'una banda a l'altra. La quantitat de vegades que aquestes partícules es mouen d'una banda a l'altra s'anomena freqüència, i segur que tots hem sentit a parlar de la freqüència d'un so, oi? L'espectrografia, en aquest cas, es dedica a mesurar la freqüència dels sons en un determinat espai de temps. Cada so té una freqüència diferent a cada moment, i això ens permet diferenciar, sobre un espectrograma, quins sons estan sonant.

Tot és qüestió de comparar

Com se sap quina cançó està sonant? Comparant. En realitat, és com prendre una «radiografia» i comparar-la amb altres radiografies de sons que teníem ja guardades, podent saber així quina de totes coincideix amb aquesta. Doncs així és exactament com funcionen Shazam i altres aplicacions.

Espectrograma

Shazam és un espectrògraf

Quan iniciem Shazam, i ens diu que està reconeixent la cançó, en realitat el que està fent és convertir el nostre smartphone en un espectrògraf. Està capturant el so i generant un espectrograma com el que teniu just a sobre aquest paràgraf. Quan té una espectrografia prou detallada, llavors passa a comparar-la amb tota la base de dades que tenen emmagatzemada.

La base de dades és el més complex

En realitat, el més complex de tot plegat és la base de dades que emmagatzema els espectrogrames de totes les cançons. Sabem la dificultat que té crear un servei musical que contingui tota la música del món. Spotify és un d'aquests programes, però encara hi falten cançons importants. Doncs si això ja és de per si mateix complex, imaginem el que ha de ser emmagatzemar els espectrogrames de totes aquestes cançons. És normal que part del treball de l'equip de Shazam i altres aplicacions similars sigui dedicar-se a ampliar la base de dades que, en realitat, és el cor de l'aplicació.

El seu funcionament offline és molt senzill

De vegades podríem preguntar-nos com poden funcionar aquestes aplicacions fora de línia, sense connexió a Internet. En realitat és molt simple, ja que mai no ens donen les dades fins que no es connecten a Internet. No han de guardar tota la cançó, ni tan sols han de guardar el tros musical que volem analitzar. En realitat, l'únic que guarden són les dades espectrògràfiques, de manera que després puguin ser comparades a la base de dades, i això no ocupa pràcticament res.

L'algorisme és essencial

Això no obstant, un altre dels aspectes més importants d'aquestes aplicacions és l'algorisme que utilitzen per comparar cançons. Un algorisme, en realitat, no és més que una manera de fer un procediment. L'algorisme de Shazam ha d'estar en millora constant. Per què? Perquè han de treballar per aconseguir que el sistema segueixi un camí que permeti trobar la cançó encara més ràpid. I és que un pot pensar que una vegada entès allò dels espectrogrames i completada la base de dades de cançons, ja està tot fet, però res més lluny de la realitat. Pensem que heu de comparar l'espectrograma amb milions i milions de cançons. Tot i això, l'algorisme és un dels aspectes principals. Hi ha diverses tècniques informàtiques per millorar aquest, i no en parlarem de cap en concret perquè seria com parlar de la forma dels Núvols en un dia tempestuós. Tot i això, sempre està bé saber que l'algorisme de l'aplicació és un dels elements essencials, juntament amb la funció d'espectrografia, i la de la base de dades de cançons.


  1.   Elclinic va dir

    Chazam és una merda. És muuuuuuucho millor Soundhound o track ID de Sony.


  2.   El Beattle va dir

    Interessant ...