WARNING: This UGen needs to allocate a large amount of real-time memory at the outset (approx. SampleRate * maxDelayTime). This will cause a CPU spike at startup. Also, due to memory mangement restrictions, There is a limited number of previous frames that can be stored. Right now no more the 512 frames can be stored. With a frame size of 512 samples, this makes a hard limit to the max delay of about 5.9 seconds at a SR of 44100 (or (FFT size * 512) / SR). Chances are, however, that you will run out of RT memory (the memSize ServerOption) before hitting these limits, especially at larger FFT frame sizes.
PV_BinDelay.new(buffer, maxdelay, delaybuf, fbbuf, hop: 0.5)
Arguments:
buffer |
The FFT buffer. |
maxdelay |
In seconds. Used at init time to create memory for the delays. Non-modulatable. |
delaybuf |
A buffer of (fft buffer size / 2) containing the delay times for each bin. Delay times will be rounded to the closest bin. Smaller FFT windows will yield better time resolution. |
fbbuf |
A buffer of (fft buffer size / 2) containing the fb percentages for each bin. |
hop |
If you are using FFT with a hop value different then the default 0.5, you need to tell PV_BinDelay so it can calculate the correct times. |