Cum fac aplicațiile care recunosc melodii, cum ar fi Shazam?

Spectrograma

Shazam și compania au devenit una dintre cele mai uimitoare aplicații pe care le putem purta pe un smartphone. Și nu este că nu sunt celebri, pentru că toată lumea le cunoaște deja, dar totuși pare aproape magic că sunt capabili să recunoască ce cântec cântă la un moment dat. Să vedem cum funcționează de fapt aplicațiile precum Shazam.

Spectrografia, pilonul esențial

În realitate, aceste aplicații se bazează pe ceea ce știm ca spectrografie, sau spectroscopie, adică corpul de cunoștințe legate de analiza spectroscopică. Și cu aceste cuvinte poate fi greu de înțeles, dar o vom explica într-o clipă. Când se produce orice sunet, îl putem auzi deoarece particulele care se află între noi și sursa acelui sunet se mișcă, vibrează. Când spunem că aceste particule se mișcă, ne referim la faptul că generează valuri, care merg dintr-un loc în altul. De câte ori aceste particule se mișcă înainte și înapoi se numește frecvență și cu siguranță am auzit cu toții de frecvența unui sunet, nu? Ei bine, spectrografia, în acest caz, este dedicată măsurării frecvenței sunetelor într-o anumită perioadă de timp. Fiecare sunet are o frecvență diferită în fiecare moment și asta ne permite să diferențiem, pe o spectrogramă, ce sunete sună.

Totul este o chestiune de comparație

De unde știi ce melodie cântă? Comparând. De fapt, este ca și cum ai lua o „radiografie” și a-l compara cu alte raze X de sunete pe care le aveam deja stocate, putând astfel ști care dintre toate se potrivește cu aceea. Ei bine, exact așa funcționează Shazam și alte aplicații.

Spectrograma

Shazam este un spectrograf

Când începem Shazam și ne spune că recunoaște melodia, ceea ce face de fapt este să transforme smartphone-ul nostru într-un spectrograf. Captează sunetul și generează o spectrogramă ca cea pe care o aveți chiar deasupra acestui paragraf. Odată ce aveți un spectrograf suficient de detaliat, îl comparați cu întreaga bază de date pe care au stocat-o.

Baza de date este cea mai complexă

De fapt, cea mai complexă dintre toate este baza de date care stochează spectrogramele tuturor melodiilor. Știm cât de dificil este să creezi un serviciu de muzică care să conțină toată muzica din lume. Spotify este unul dintre aceste programe, dar încă lipsesc melodii importante din el. Ei bine, dacă acest lucru este deja complex, imaginați-vă cum trebuie să fie să stocați spectrogramele tuturor acelor cântece. Este normal ca o parte din munca echipei Shazam și a altor aplicații similare să se dedice extinderii bazei de date care, de fapt, este inima aplicației.

Funcționarea sa offline este foarte simplă

Uneori ne-am putea întreba cum pot funcționa aceste aplicații offline, fără o conexiune la internet. De fapt, este foarte simplu, deoarece nu ne oferă niciodată datele până când nu sunt conectați la Internet. Nu trebuie să salveze întreaga melodie, nici măcar nu trebuie să salveze piesa muzicală pe care vrem să o analizăm. În realitate, singurul lucru pe care îl păstrează sunt datele spectrografice, pentru ca ulterior să poată fi comparate în baza de date, iar asta nu ocupă practic nimic.

Algoritmul este esențial

Cu toate acestea, un alt dintre cele mai importante aspecte ale acestor aplicații este algoritmul pe care îl folosesc pentru a compara melodiile. Un algoritm, în realitate, nu este altceva decât o modalitate de a efectua o procedură. Algoritmul lui Shazam trebuie să se îmbunătățească constant. De ce? Pentru că trebuie să lucreze pentru ca sistemul să urmeze o cale care îi permite să găsească melodia și mai repede. Și este că se poate crede că odată ce spectrogramele sunt înțelese și baza de date de cântece este completată, totul este făcut, dar nimic mai departe de adevăr. Să ne gândim că ar trebui să compari spectrograma cu milioane și milioane de melodii. Cu toate acestea, algoritmul este unul dintre aspectele principale. Există mai multe tehnici computerizate pentru a îmbunătăți acest lucru și nu vom vorbi despre niciuna în mod special, deoarece ar fi ca și cum am vorbi despre forma norilor într-o zi furtunoasă. Totuși, este întotdeauna bine de știut că algoritmul aplicației este unul dintre elementele esențiale, alături de funcția de spectrografie, și cea a bazei de date de melodii.


  1.   clinica el a spus

    Chazam e nasol. Este mult mai bun Soundhound sau track ID de la Sony.


  2.   Beattle el a spus

    Interesant…