Come fanno le app che riconoscono le canzoni, come Shazam?

spettrogramma

Shazam e compagnia sono diventati una di quelle applicazioni più incredibili che possiamo portare su uno smartphone. E non è che non siano famosi, perché tutti li conoscono già, ma sembra comunque quasi magico che siano in grado di riconoscere quale canzone sta suonando in un dato momento. Vediamo come funzionano effettivamente le app come Shazam.

Spettrografia, il pilastro essenziale

In realtà, queste applicazioni si basano su ciò che conosciamo come spettrografia, o spettroscopia, cioè il corpo di conoscenze relativo all'analisi spettroscopica. E con queste parole può essere difficile da capire ma lo spiegheremo tra un attimo. Quando viene prodotto un suono, possiamo sentirlo perché le particelle che si trovano tra noi e la fonte di quel suono si muovono, vibrano. Quando diciamo che queste particelle si muovono, intendiamo che generano onde, che vanno da un luogo all'altro. Il numero di volte in cui queste particelle si muovono avanti e indietro è chiamato frequenza, e sicuramente tutti abbiamo sentito parlare della frequenza di un suono, giusto? Ebbene, la spettrografia, in questo caso, è dedicata a misurare la frequenza dei suoni in un certo periodo di tempo. Ogni suono ha una frequenza diversa in ogni momento, e questo ci permette di differenziare, su uno spettrogramma, quali suoni stanno suonando.

Si tratta di confrontare

Come fai a sapere quale canzone sta suonando? Confrontando. In realtà è come prendere una "radiografia" e confrontarla con altre radiografie di suoni che avevamo già memorizzato, potendo così sapere quale di tutte corrisponde a quella. Bene, questo è esattamente il modo in cui funzionano Shazam e altre app.

spettrogramma

Shazam è uno spettrografo

Quando avviamo Shazam e ci dice che sta riconoscendo la canzone, ciò che sta effettivamente facendo è trasformare il nostro smartphone in uno spettrografo. Sta catturando il suono e generando uno spettrogramma come quello che hai appena sopra questo paragrafo. Una volta che hai uno spettrografo sufficientemente dettagliato, vai avanti a confrontarlo con l'intero database che hanno memorizzato.

Il database è il più complesso

In realtà, il più complesso di tutti è il database che memorizza gli spettrogrammi di tutte le canzoni. Sappiamo quanto sia difficile creare un servizio musicale che contenga tutta la musica del mondo. Spotify è uno di quei programmi, ma mancano ancora brani importanti. Bene, se questo è già complesso, immagina come dev'essere memorizzare gli spettrogrammi di tutte quelle canzoni. È normale che parte del lavoro del team di Shazam e di altre applicazioni simili sia dedicarsi all'espansione del database che, di fatto, è il cuore dell'applicazione.

Il suo funzionamento offline è molto semplice

A volte potremmo chiederci come queste applicazioni possano funzionare offline, senza una connessione Internet. In realtà è molto semplice, dal momento che non ci danno mai i dati finché non si collegano a Internet. Non devono salvare l'intera canzone, non devono nemmeno salvare il brano musicale che vogliamo analizzare. In realtà, l'unica cosa che conservano sono i dati spettrografici, in modo che in seguito possano essere confrontati nel database, e ciò non occupa praticamente nulla.

L'algoritmo è essenziale

Tuttavia, un altro degli aspetti più importanti di queste applicazioni è l'algoritmo che usano per confrontare le canzoni. Un algoritmo, in realtà, non è altro che un modo per eseguire una procedura. L'algoritmo di Shazam deve essere in costante miglioramento. Come mai? Perché devono lavorare per far sì che il sistema segua un percorso che gli permetta di trovare la canzone ancora più velocemente. Ed è che si può pensare che una volta compresi gli spettrogrammi e completato il database delle canzoni, tutto sia fatto, ma nulla è più lontano dalla verità. Pensiamo che dovresti confrontare lo spettrogramma con milioni e milioni di canzoni. Tuttavia, l'algoritmo è uno degli aspetti principali. Esistono diverse tecniche informatiche per migliorarlo, e non ne parleremo in particolare perché sarebbe come parlare della forma delle Nuvole in un giorno di tempesta. Tuttavia, è sempre bene sapere che l'algoritmo dell'applicazione è uno degli elementi essenziali, insieme alla funzione spettrografica, ea quella del database dei brani.


  1.   la clinica suddetto

    Chazam fa schifo. È davvero molto meglio Soundhound o track ID di Sony.


  2.   Il battitore suddetto

    Interessante…