1.1.0 • Published 10 years ago
detect-pitch v1.1.0
detect-pitch
Detects the pitch of a signal using the autocorrelation method.
Example
var detectPitch = require('detect-pitch')
var n = 1024
var ω = 2.0 * Math.PI / n
//Initialize signal
var signal = new Float32Array(n)
for(var i=0; i<n; ++i) {
signal[i] = Math.sin(100 * i * ω)
}
console.log(Math.round(n / detectPitch(signal)))
//Prints out:
//
// 100
//Install
npm install detect-pitchrequire('detect-pitch')(signal[, threshold])
Detects the pitch of signal by computing the period by autocorrelation.
signalis a snippet of an audio signal. Represented as either a typed array or an ndarray.thresholdis an optional parameter between0and1which determines the cutoff for reporting a successful detection. Higher values indicate stricture cutoff. Default is0
Returns The number of samples in the period of the signal. If no pitch was detected, returns 0. To recover the pitch frequency, you need to divide the sample rate by this number (note that this will be NaN for signals with no pitch):
var pitchInHz = sampleRateInHz / periodInSamplesCredits
(c) 2013-2015 Mikola Lysenko. MIT License