Dear users — AcoustID provides free service to a number of open source applications. If you are using such an application and find AcoustID useful, please consider donating a small amount, to keep it running smoothly and stay free. Thank you.

AcoustID

Chromaprint

Chromaprint is the core component of the AcoustID project. It's a client-side library that implements a custom algorithm for extracting fingerprints from any audio source. Overview of the fingerprint extraction process can be found in the blog post "How does Chromaprint work?".

Download

Latest release — 1.1 (November 23, 2013)

Usage

The library exposes a simple C API and the package also includes bindings for the Python language. The documentation for the C API can be found in the main header file.

Note that the library only calculates audio fingerprints from the provided raw uncompressed audio data. It does not deal with audio file formats in any way. Your application needs to find a way to decode audio files (MP3, MP4, FLAC, etc.) and feed the uncompressed data to Chromaprint.

There is an example application written in C that uses FFmpeg to calculate fingerprints from any audio files.

Development

You can dowload the development version of the source code from Bitbucket. Either you can use Git to clone the repository or download a zip/tar.gz file with the latest version.

In order to just compile the library, you will need to have either FFTW3 or FFmpeg installed, unless you are on OS X, where we can use the standard vDSP library. If you want to build the full package, you will also need TagLib, Boost and Google Test.

$ git clone https://bitbucket.org/acoustid/chromaprint.git
$ cd chromaprint
$ cmake .
$ make

The source code is licensed under the LGPL2.1+ license.