Skip to content

A modular pitch detection library for Rust. Fast, zero-dependency, real-time ready.

License

Notifications You must be signed in to change notification settings

paramako/autopitch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

autopitch

Crates.io Docs.rs License: MIT Changelog

A modular pitch detection library for Rust.

Lightweight, fast, and suitable for real-time audio analysis.

Features

  • Zero dependencies
  • Designed for real-time use (no heap allocations during detection)
  • Simple PitchDetector trait for pluggable algorithms

Algorithms

Algorithm Status Description
Autocorrelation Available Time-domain autocorrelation with first-peak detection and parabolic interpolation
More algorithms Coming soon

Usage

use autopitch::algorithm::Autocorrelation;
use autopitch::detect::PitchDetector;

let mut detector = Autocorrelation::default();
let samples: Vec<f32> = /* your audio samples */;
let sample_rate = 44100.0;

if let Some(pitch) = detector.detect(&samples, sample_rate) {
    println!("Detected pitch: {:.2} Hz", pitch);
}

License

MIT

About

A modular pitch detection library for Rust. Fast, zero-dependency, real-time ready.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages