Graillon 1.0, VST effect fully made with D

Guillaume Piolat via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Sun Nov 29 07:13:39 PST 2015


On Sunday, 29 November 2015 at 13:21:53 UTC, Ola Fosheim Grøstad 
wrote:
>
> I remember the electro acoustic people here in Oslo (NoTAM) 
> doing live pitchtracking 20 years ago, I believe they used an 
> envelope follower of some sort. Just measuring the distance 
> between the tops? That was to have the "electronic 
> accompaniment" follow the lead of the vocalist I believe.
>

The hard thing about live pitch-tracking is getting the minimal 
latency keeping reliability. It's not that simple. You also want 
"voicedness", which is more challenging than pitch.

>> But it has different latency characteristics, overlapped FFT 
>> easily goes into the 20/30 ms.
>
> It depends on how low down in frequency you need to go, a 
> female voice is at 160 hz and up, and a child is at 250hz and 
> up. In that frequency range one could do better. And at the 
> cost of complexity you could use two FFTs, one for the lower 
> range and another for the higher range.

Thought about it but a singer could usually cover a range of 3 
octaves, even if very few song mandate it: 
https://www.youtube.com/watch?v=cveoHrMyUDs&t=41s.

A man voice could go as low as say 40hz.
Only if you would need only one period to guess the pitch 
(unlikely), that's already 25ms latency guaranteed, and that's 
before you introduce FFT overlap! (if you want eg. to track 
harmonics, get formants through linear prediction, etc).

I've not tried the multiple FFT, I was worried pitch would lag 
oddly when changing FFT size. Perhaps it could work.


> Or maybe one can use wavelets, but I don't know much about 
> wavelet transforms (they don't map to cosine, so imagine it 
> will be much harder to do well).

I have trouble to imagine the reconstruction so don't use them 
(well, I did once, but didn't _get_ it).


More information about the Digitalmars-d-announce mailing list