resonant-analysis
High-level audio analysis features for the resonant workspace.
Features
| Module | Description |
|---|---|
spectral |
Spectral centroid, spread, flatness, rolloff |
pitch |
YIN fundamental frequency estimator |
onset |
Onset detection via spectral flux + adaptive threshold |
tempo |
Tempo estimation via autocorrelation of onset envelope |
mfcc |
Mel-frequency cepstral coefficients with deltas |
chroma |
12-bin pitch class profiles (C, C#, ..., B) |
Quick start
use spectral;
let magnitudes = ;
let frequencies = ;
let centroid = spectral_centroid.unwrap;
let flatness = spectral_flatness.unwrap;
Pitch estimation
use YinEstimator;
let estimator = new;
let est = estimator.estimate.unwrap;
if let Some = est.frequency_hz
Tempo estimation
use TempoEstimator;
let estimator = new;
let est = estimator.estimate.unwrap;
println!;
MFCC extraction
use MfccExtractor;
let extractor = new;
let frames = extractor.extract.unwrap;
let deltas = deltas.unwrap;
Chroma features
use ChromaExtractor;
let extractor = new;
let chroma = extractor.extract.unwrap;
for cv in &chroma
License
MIT OR Apache-2.0