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?".
Latest release — 0.6 (December 22, 2011)
- Source code tarball (530K)
- Static binaries for the fpcalc tool
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.
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 git://github.com/lalinsky/chromaprint.git $ cd chromaprint $ cmake . $ make
The source code is licensed under the LGPL2.1+ license.