This module is a wrapper around the fpcalc
command-line tool
and provides a node interface to calculate AcoustID audio
fingerprints for audio files.
fpcalc
(provided by Chromaprint) must be installed for
this module to function.
OSX using Homebrew
$ brew install chromaprint
Ubuntu
$ sudo apt-get install libchromaprint-tools
var fpcalc = require("fpcalc");
fpcalc("./audio.mp3", function(err, result) {
if (err) throw err;
console.log(result.file, result.duration, result.fingerprint);
});
Calculates the fingerprint of the given audio file.
File must be the path to an audio file or a readable stream.
If using a stream, note that you will not get duration
out due to an fpcalc issue.
Options may be an object with any of the following keys:
length
: Length of the audio data used for fingerprint calculation (passed as-length
option)raw
: Output the raw uncompressed fingerprint (default:false
)command
: Path to the fpcalc command (default:"fpcalc"
- expects executable in$PATH
)
Callback must be a function that will be called with callback(err, result)
once the fingerprint is calculated. The result object will
contain the following keys:
file
: Path to the audio fileduration
: Duration of audio file in secondsfingerprint
: Fingerprint of audio file - Buffer ifoptions.raw
, String otherwise
npm install --save fpcalc