Crate freq_det

Crate freq_det 

Source
Expand description

Frequency detection made easy

use freq_det::FreqDetector;

let sample_count = 4096;

let sinusoid_440hz = (0..sample_count)
    .map(|i| {
        use std::f32::consts::TAU;
        (i as f32 / 44100.0 * 440.0 * TAU).sin()
        // noise
        + 0.9 * (i as f32 / 44100.0 * 100.0 * TAU).sin()
        + 0.9 * (i as f32 / 44100.0 * 120.0 * TAU).sin()
    })
    .collect::<Vec<_>>();

let freq_detector = FreqDetector::new(44100, sample_count).unwrap();
assert_eq!(freq_detector.detect(&sinusoid_440hz).unwrap().round(), 440.0);

Structs§

FreqDetector
Frequency detector

Enums§

DetectError
DetectorCreateError