Tout le monde connaît Shazam, cette application géniale qui permet d’identifier facilement une chanson quand elle passe à la radio, à la télé ou sur un ordinateur. Mais savez-vous comment fonctionne Shazam ? C’est ce que je vais essayer de vous expliquer.
Lorsqu’un être humain reconnaît une chanson, c’est souvent parce que cela fait appel à des souvenirs et lui rappelle de bonnes choses. Cependant, Shazam ne fonctionne pas du tout de la même manière. C’est beaucoup plus technique, très élaboré et cela fait appel aux mathématiques.
Lorsque vous attrapez votre smartphone pour lui faire reconnaître un morceau, Shazam se concentre sur les fréquences les plus significatives, c’est-à-dire les notes de musique qui sont particulièrement marquantes, comme la grosse caisse, les coups de cymbale, les riffs de guitare, etc. Shazam isole et identifie alors toutes ces informations pour en faire ce qu’on appelle un spectrogramme.
Un spectrogramme est un schéma avec le temps en abscisse, les fréquences en ordonnée et une troisième dimension représentée par des couleurs qui correspond au volume, à l’intensité de chaque note. À l’arrivée, on a donc un schéma très riche mais assez complexe pour un traitement informatique.
C’est là que l’on passe à la deuxième phase. Le spectrogramme est transformé en un nuage de points, uniquement les points les plus significatifs, ce qu’on appelle une constellation, afin de créer une empreinte sonore. Chaque morceau de musique a sa propre empreinte sonore qui est unique. Ainsi, on se retrouve avec un système simplifié qui peut être relativement facilement traité par un ordinateur.
Mais le travail de Shazam ne s’arrête pas là. On passe à la troisième phase, et c’est là encore assez génial. L’empreinte sonore est envoyée sur les serveurs de Shazam pour être comparée à toutes les autres empreintes, à tous les morceaux déjà stockés dans la base de données, qui en compte plus de 10 millions.
Comparaison qui pourrait prendre énormément de temps, mais les ingénieurs de Shazam ont eu une idée géniale. Ils vont utiliser ce qu’on appelle en informatique un hachage. Ils vont hacher l’empreinte sonore, c’est-à-dire la découper en petits morceaux grâce à un algorithme mathématique, pour n’en conserver qu’un code unique composé de chiffres et de lettres, facilement traitable et reconnaissable par les ordinateurs. C’est ce code qui va être comparé à tous les autres codes contenus dans la base de données.
Après toutes ces étapes, Shazam peut vous annoncer fièrement qu’il a trouvé le nom de la chanson que vous êtes en train d’écouter. Il va beaucoup plus vite que vous au blind test.
Ce qui est assez étonnant, c’est que Shazam est capable de reconnaître un morceau même lorsqu’il y a un bruit de fond, par exemple dans une discothèque, ou lorsque le son n’est pas de très bonne qualité. Cependant, il est incapable de reconnaître un morceau en live, car même si les musiciens jouent très bien, un morceau joué en live ne correspond jamais exactement aux morceaux d’origine enregistrés en studio. Shazam n’est pas non plus capable de reconnaître une chanson que vous chantonnez ou que vous sifflez.
Shazam a été inventé en 1999 et a été racheté en 2017 par Apple. Désormais, il est intégré dans l’iPhone via l’assistant vocal Siri. Google a également développé un système équivalent pour reconnaître les chansons, proposé dans l’assistant Google, notamment dans les smartphones Pixel.
J’espère que cette explication simplifiée sur le fonctionnement de Shazam vous a plu. Restez connectés pour d’autres histoires de tech passionnantes à venir.