Com funciona Shazam?

Les matemàtiques expliquen com la popular aplicació mòbil és capaç de reconèixer una cançó, tot i el soroll o la llunyania del so original

Hi ha algunes aplicacions que trobem instal·lades a pràcticament qualsevol telèfon mòbil. Feu la prova, mireu el mòbil d'algun dels vostres amics i segur que hi trobareu WhatsApp, Facebook, Google Maps, possiblement Instagram i Shazam.

De ben segur que aquesta app no necessita presentació, però per resumir la seva funcionalitat de manera molt breu podríem dir que és capaç d'identificar pràcticament qualsevol cançó que soni només escoltant-la uns segons. Fins i tot, ens trobem en ambients amb soroll de fons o on la música és lluny, Shazam l'encerta.

Si us heu plantejat en algun moment com funciona l'app, la primera resposta que us ha degut venir a la ment és que ho ha de fer per art de màgia. Però res més allunyat de la realitat. Realment Shazam funciona gràcies a un algorisme d'identificació complex creat per Avery Li-Chun Wang, un dels fundadors de la companyia i que a continuació intentarem explicar-vos de manera senzilla.

D'entrada, tot el sistema es basa en una base de dades en la que s'hi guarda l'empremta digital de 8 milions de cançons aproximadament. Quan un usuari fa servir l'aplicació per identificar un tema, l'app enregistra uns segons d'àudio –aproximadament 10– i en genera l'empremta digital.

A partir d'aquí, el dispositiu envia aquesta empremta als servidors de Shazam, que la comparen amb la seva base de dades. I si s'ha trobat una coincidència, el sistema retorna tota la informació de la cançó.

Fins aquí el procés resulta relativament lògic, però com funciona i es genera aquesta "empremta digital"? De fet quan Wang va explicar la seva metodologia a la comunitat científica, titllada d'impossible per compilar la gran quantitat d'informació continguda en una cançó en una sola signatura única. Però l'aproximació de Wang tenia un truc: ell preveia eliminar pràcticament totes les dades del tema i quedar-se només amb els moments més "intensos" de l'àudio.

Doncs bé, per a cada cançó, Shazam en genera un gràfic tridimensional, on un eix és el temps, l'altre la freqüència i el tercer la intensitat. I l'omple de dades amb un parell de punts cada segon. Per tant, cada punt de la gràfica representa la intensitat d'una freqüència en un moment concret. Per exemple, una línia plana significaria un to pur i continu i una línia vertical una explosió instantània de so. A partir d'aquesta gràfica, l'algorisme de Shazam –que és secret, és clar–, identifica els moments de màxima intensitat i en guarda la seva freqüència i el temps des de l'inici de la cançó en el qual es produeixen.

Així doncs, quan un usuari escolta una cançó amb l'app, aquesta envia un parell de punts –generats amb el mateix algorisme– que els servidors de Shazam comparen amb la seva base de dades. I si hi ha coincidència, es produeix la màgia.
Avui et destaquem
El més llegit