Skip to content

parshap/node-fpcalc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fpcalc

This module is a wrapper around the fpcalc command-line tool and provides a node interface to calculate AcoustID audio fingerprints for audio files.

Installing Chromaprint

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

Example

var fpcalc = require("fpcalc");
fpcalc("./audio.mp3", function(err, result) {
  if (err) throw err;
  console.log(result.file, result.duration, result.fingerprint);
});

API

fpcalc(file, [options,] callback)

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 file
  • duration: Duration of audio file in seconds
  • fingerprint: Fingerprint of audio file - Buffer if options.raw, String otherwise

Installation

npm install --save fpcalc

About

Calculate AcoustID audio fingerprint

Resources

Stars

Watchers

Forks

Packages

No packages published