Quand le nom de fichier ne suffit plus, l'empreinte audio Chromaprint soumise à AcoustID permet d'identifier un morceau avec certitude — en théorie. En pratique, c'est plus compliqué.

Qu'est-ce qu'une empreinte audio ?

Une empreinte audio (fingerprint) est une signature compacte calculée à partir du contenu sonore d'un fichier. Contrairement à une recherche par titre, elle est insensible au nom de fichier et détecte un morceau même s'il a été renommé track01.mp3 ou piste_inconnue.mp3. En théorie, c'est la méthode idéale.

Chromaprint

Chromaprint est l'algorithme open source qui calcule cette empreinte. Il analyse les fréquences et produit une chaîne de caractères représentant le morceau.

AcoustID

AcoustID est la base de données publique qui fait correspondre une empreinte Chromaprint à un enregistrement (MusicBrainz). En soumettant l'empreinte, on obtient l'identifiant du morceau, puis ses métadonnées officielles.

Quand l'utiliser

  • Fichier nommé sans info exploitable (01.mp3, piste.mp3).
  • Titre ambigu (versions, remixes).
  • Besoin d'une reconnaissance certaine sans ambiguïté.

La réalité du terrain

J'ai voulu l'intégrer dans QuickTagMP3, et honnêtement, c'est la méthode qui m'a donné le plus de fil à retordre. Le calcul de Chromaprint dans le navigateur suppose un portage WASM, et les implémentations disponibles datent de 2014, sont non maintenues et peu fiables. Après pas mal d'essais, j'ai préféré m'appuyer sur la recherche par titre + durée via Deezer, plus rapide et fiable dans l'immense majorité des cas. L'empreinte audio reste l'approche théoriquement parfaite pour les fichiers totalement anonymes — mais en pratique, elle n'en vaut pas la complexité pour le gain qu'elle apporte.