irapt is an implementation of the IRAPT pitch estimation algorithm.
IRAPT is an "instantaneous" version of the Robust Algorithm for Pitch Tracking (RAPT).
Usage
Currently, the parameters to [Irapt] are technical and may be difficult to tune, but the
[Parameters::default] provides a sensible set of defaults for ordinary human speech which is computationally
efficient, given the input can be resampled to the default [Parameters::sample_rate].
The input must be given as a [VecDeque] to [Irapt::process] which is to facilitate the sliding analysis window.
The number of samples removed from the buffer by process can be calculated on each invocation in order to track
the global sample index at which each pitch is estimated:
use ;
use VecDeque;
use PI;
let parameters = default;
let mut irapt = new.expect;
let mut sample_buffer =
.map
.;
let mut sample_index = 0;
while let =