Fingerprinting

This page has not been reviewed by our documentation team (more info).

MusicBrainz has used several audio fingerprinting systems over the years, all working in essentially the same way: an automatic content recognition (ACR) system coupled with a two-step call-and-response of submission and lookup with a remote, central database.

First, the source audio copy is used to create a fingerprint, which is then submitted to a third-party server for analysis. The server compares the submission to the other fingerprints it has stored, looking for the closest match available. If a match is found that is below the server's configured threshold for variance, it returns the matched ID, or if none do it issues a new ID and returns that. Once this step is done, a fingerprint can be calculated for any file and then be used to look up the corresponding ID, which gets associated with a given Track (pre-NGS) or Recording (post-NGS), and metadata can be gathered from there.

AcoustID

AcoustID is MusicBrainz’ third and most recent audio fingerprinting system, created by Lukáš Lalinský and made public circa January 2011.[1] Support for AcoustID was implemented in MusicBrainz Picard version 0.16, released in October 2011.[2]

It has several immediate advantages:

  • It is open source.
  • It is actively developed, in tandem with supporting reference implementations.
  • It provides a visual representation of its results to make it easier for humans to compare
  • The fingerprints produced include the duration of the source file, making it easy to recognize incorrect links to recordings

Former fingerprinting systems

TRM

TRM (TRM Recognizes Music), created by Relatable,[3] was MusicBrainz’ first audio fingerprinting system, in use from 2000–2008.

This system was used in the original MusicBrainz tagger application. The client-side audio fingerprinting library was open source and integrated into the v2.1.5 release of libmusicbrainz.[4]

This system worked reasonably well for finding duplicate music files on a local system, but had problems with collisions (different-sounding audio which got the same ID) and duplicates (same-sounding audio which has different IDs). The server was also incapable of handling the number of TRMs needed for MusicBrainz, and Relatable didn’t seem to be interested in supporting it further.[5]

TRM support was removed in November 2008.[6]

MusicDNS

MusicDNS—and the PUIDs (Portable Unique Identifiers) it produced/recorded—was MusicBrainz’ second audio fingerprinting system, in use from 2006–2020. The service was initially operated by MusicIP (later AmpliFIND Music Services) and eventually bought by Sony Corporation of America in June 2011, who at that time were also the owners of Gracenote. Tribune Media subsequently purchased Gracenote—including the MusicDNS software—in February 2014, merging their Tribune Media Services division with it under the Gracenote brand.

MusicBrainz began using these IDs in March 2006,[7] and they were implemented in Picard in version 0.7.0, released in July 2006.[8]

While being a significant improvement over the TRM system it soon replaced, it still had several major weaknesses:

  • The fingerprint submission system was not open source, and as such could not be included in Picard, restricting functionality to lookup of existing fingerprints only; new fingerprints had to be created using either the proprietary MusicIP Mixer software or the genpuid command-line interface (now discontinued).
  • The fingerprinting process was slow on both on the client and server sides.
  • Over time, the operators became increasingly disinterested in operating the service, and currently it barely works if at all.

PUIDs were also quite opaque, retaining none of the calculated output from the source audio but only a unique number referencing an entry in a database outside of MusicBrainz’ control. If/when that database is no longer accessible, they become useless. See the (now expired) U.S. patent for details on the technology. The client-side Open Fingerprint Architecture audio fingerprinting library, LibOFA, is open-source.

Support for PUIDs was removed from the MusicBrainz server on October 15, 2013,[9][10] and on June 15, 2020, all PUID edits were removed from the database.[11]

Other audio fingerprinting systems

Open source

Actively developed

  • fdmf by Kurt Rosenfeld – portable software written in Perl and C for "finding pairs of music files in a collection that are likely to contain the same music."
  • MusicURI by Dr. Dimitrios Kourtesis – a Java library for "fingerprinting music files, assigning unique URIs to them and matching them to unknown audio clips;" part of the Mpeg-7 Audio DB project.

Abandoned

  • Echoprint by The Echo Nest Project and later acquired by Spotify – a (now abandoned) music identification system with "next-generation background noise removal."
  • Freetantrum by Bob Copeland, Rob Johnston, Mike Schiraldi, Michael T. Shinn, Scott Shinn, Jon Shiring, Kendrick Spencer, Mark Vicuna and Scott Wilson – a C/C++ library for acoustic fingerprinting of music and queries using eTantrum's song identification service, Songprint.
  • JAudioScout, by David Starkweather – a Java port of the original AudioScout codebase (written in C) with bindings for C#; based on the pHash (perceptual hash) implementation of the Philips "Robust Audio Hashing" algorithm, developed by the author in collaboration with Evan Klinger.
  • jHears by Juha Heljoranta – an acoustic fingerprinting framework based on the Future Proof Fingerprint design by Geoff Schmidt (formerly of Tuneprint).
  • libFooID by Gian-Carlo Pascutto – an audio fingerprinting library developed for and used by foosic.
  • OpenFP by Lars Windolf – a command-line application written in C for creating audio fingerprint files.

Partially open source

  • acrcloud_extr_tools by ACRCloud – an open source audio file fingerprint tool for accessing their high-quality and cost efficient commercial cloud platform that helps companies and developers integrate Automatic Content Recognition (ACR) techniques for recognizing audio/video content, monitoring radio streams, detection of live TV contents and more. (Free Trial | Documentation)
  • fplib by Last.fm – an open source client-side audio fingerprinting library for accessing the proprietary Last.fm API, based on the Computer Vision for Music Identification algorithm developed by Derek Hoiem, Yan Ke and Rahul Sukthankar.[12]

Proprietary

  • Audible Magic Music Registry – one of the largest authoritative sources for identifying music, TV, and film, with data for more than 140,000 music labels from over 150 different territories.[13]
  • audioid in-app recognition by mufin GmbH – a commercial web service for real-time identification of any audio content (e.g. radio channels, television series and advertisements, movies, etc.) and synchronization between broadcasted, recorded or on-demand content and interactive applications on companion devices; originally developed by the Fraunhofer Institute for Digital Media Technology (IDMT) in partnership with the Fraunhofer Institute for Integrated Circuits IIS.
  • MusicID by Gravity Mobile – a mobile app that identifies music playing around you via the Gracenote ID API, powered by the Philips Electronics' audio fingerprinting algorithm[14][15] Gracenote acquired on August 30, 2005 for an undisclosed number of preferred stock shares.
  • Rovi Media Recognition Service (formerly AMG LASSO) – a suite of web-based solutions for content discovery with sophisticated recommendations, search and entertainment metadata; acquired TiVo, Inc. on April 29, 2016 for US$1.1 billion and now operates under the TiVo brand.
  • Shazam – a proprietary music fingerprinting system powering a mobile app that recognises music playing on your phone or around you.
  • SongTapper by Bored.com – use your computer keyboard to tap the rhythm of the song, when complete you will see a list of matching songs. If we can't identify your song, you can teach our system by entering the song name.

References

  1. Lalinský, Lukáš (January 18, 2011). "How does Chromaprint work?" on oxygene.sk. Archived at the Wayback Machine on September 21, 2012. Last accessed on July 23, 2025.
  2. Wiencek, Michael (October 23, 2011). "Picard 0.16 released with AcoustID support," MetaBrainz Blog. Archived at the Wayback Machine on September 28, 2020. Last accessed on July 23, 2025.
  3. (2003) "Tech" on Relatable. Archived from the original on July 6, 2008. Last accessed on July 23, 2025
  4. Lalinský, Lukáš (May 12, 2007) release-2.1.5 tag in libmusicbrainz repository on GitHub. Last accessed on July 23, 2025.
  5. Kaye, Robert (September 30, 2005) "General update: What's up with TRM??" on MetaBrainz Blog. Archived at the Wayback Machine on June 14, 2021. Last accessed on July 23, 2025.
  6. Kaye, Robert (November 21, 2008) "Reminder: Server update is coming this Sunday. And TRM are going away!" on MetaBrainz Blog. Archived at the Wayback Machine on June 14, 2021. Last accessed on July 23, 2025.
  7. Kaye, Robert (March 13, 2006) "New fingerprinting questions answered" on MetaBrainz Blog. Archived at the Wayback Machine on September 28, 2020. Last accessed on July 23, 2025.
  8. Kaye, Robert (July 3, 2006) "Picard 0.7.0 released" on MetaBrainz Blog. Archived at the Wayback Machine on September 23, 2020. Last accessed on July 23, 2025.
  9. Kaye, Robert (March 21, 2013) "PUIDs are deprecated and will be removed on 15 October, 2013" on MetaBrainz Blog. Archived at the Wayback Machine on July 7, 2019. Last accessed on July 23, 2025.
  10. acidcycles (October 14, 2013) "October 14 schema change complete" on MetaBrainz Blog. Archived at the Wayback Machine on July 12, 2019. Last accessed on July 23, 2025,
  11. Rivierre, Yvan (June 15, 2020) "MusicBrainz Server update, 2020-06-15" on MetaBrainz Blog. Archived at the Wayback Machine on June 16, 2020. Last accessed on July 23, 2025.
  12. C., Norman (July 9, 2010) "Fingerprint API and app updated" on Last.fm – the Blog. Archived at the Wayback Machine on August 15, 2020. Last accessed on July 23, 2025.
  13. Spark, David (May 8, 2003). "Name That Tune: Audio Fingerprint Firms’ Dueling Business Models." EContent Magazine, May 2003. Archived from the original at the Wayback Machine on June 7, 2011. Last accessed on July 23, 2025.
  14. Haitsma, Jaap and Kalker, Ton of Philips Research Eindhoven (October 13, 2002). "A Highly Robust Audio Fingerprinting System." Proceedings of the 3rd International Conference on Music Information Retrieval, Paris, France. Published by IRCAM – Centre Pompidou.
  15. Doets, P.J.O. and Lagendijk, R.L. (January 2004). "Theoretical Modeling of a Robust Audio Fingerprinting System." Proceedings of the 4th IEEE Benelux Signal Processing Symposium, Hilvarenbeek, Netherlands. Published by IEEE. Archived from the original at the Wayback Machine on September 30, 2004. Last accessed on July 23, 2025.