[PD] delay compensation in pitch-shifting

info at hansroels.be info at hansroels.be
Tue Nov 24 16:55:57 CET 2020


see the attached patch.
I now think it is impossible to compensate for the delay of a variable 
delay pitch shifter. Just because it's variable :) Anyway, this is 
Miller's clear explanation: 
http://msp.ucsd.edu/techniques/latest/book-html/node115.html

best, Hans

On 11/24/20 2:59 PM, Maximiliano Estudies wrote:
>
> Hi Hans,
>
> how are you measuring the delays?
>
> Cheers,
> Maxi
>
> El vie, 20 nov 2020 a las 15:25, info at hansroels.be 
> <mailto:info at hansroels.be> (<info at hansroels.be 
> <mailto:info at hansroels.be>>) escribió:
>
>     Hello,
>
>     Hopefully people with more knowledge of audio processing can
>     answer the following questions. Background: I make patches in
>     which the microphone input is modified by different kinds of
>     pitch-shifting, I would like to compensate the delays caused by
>     these pitch-shifts and thus avoid artefacts.
>
>     1) How much delay does a pitch-shifter based on a variable delay
>     (the classic rotating-tape-head style) produce? as in
>     G09.pitchshift.pd in the audio.examples folder. I did a quick test
>     with a one-sample-audio-trigger going immediately to the first
>     channel of a recording patch in Pd and simultaneously going to a
>     variable delay pitchshift (pp.pitchshift~ from AudioLab), routed
>     into the second channel of the recorder. The delays are quite
>     large and vary between 30 and 80 milliseconds, there seems to be
>     no relation with the amount of pitch-shift. In the pitch-shifting
>     patch I also notice that the delay varies between zero and the
>     window size. Is there a way/patch to calculate and compensate for
>     this delay? (for example, if you want to combine the original with
>     the pitch-shifted signal in a patch). Or is this impossible
>     because the delay is variable...
>
>     2) I'd like to know the delay in ms with FFT processing if you
>     have a 1024 sample window with overlap factor of 4, for example,
>     in a pitch-shifting vocoder? I found this info on a MAx/MSP
>     mailing list, is it correct?: "The I/ O delay is equal to the
>     window size minus the hop size (e.g., for a 1024-sample FFT window
>     with an overlap factor of 4, the hop size is equal to 256, and the
>     overall delay from input to output is 768 samples)"; at 44100
>     sampling rate this is around 17ms delay (for a window of 1024
>     samples, overlap 4).
>
>     3) Conclusion: any pitch-shifting technique introduces tens of
>     milliseconds delay? (Pitch-shifting based on granular synthesis is
>     not a solution, I think it also requires a buffer of at least 50ms.)
>
>     Hans
>
>     -- 
>     _______________________________________________
>     Pd-list at lists.iem.at <mailto:Pd-list at lists.iem.at> mailing list
>     UNSUBSCRIBE and account-management ->
>     https://lists.puredata.info/listinfo/pd-list
>
>
>
> -- 
> Maximiliano Estudies
> /VDT Referat Beschallung/
> +49 176 36784771
> omslo.com <http://omslo.com>
> maxiestudies.com <http://maxiestudies.com>


-- 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20201124/19087c2f/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: test-delay-pshift-mockup.pd
Type: text/x-puredata
Size: 1617 bytes
Desc: not available
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20201124/19087c2f/attachment-0001.bin>


More information about the Pd-list mailing list