Classes (extension) | Libraries > JoshUGens | UGens > FFT

PV_BinDelay : PV_ChainUGen : WidthFirstUGen : UGen : AbstractFunction : Object

Delay and Feedback on a bin by bin basis.
Source: JoshPV.sc


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.

Class Methods

PV_BinDelay.new(buffer, maxdelay, delaybuf, fbbuf, hop: 0.5)



The FFT buffer.


In seconds. Used at init time to create memory for the delays. Non-modulatable.


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.


A buffer of (fft buffer size / 2) containing the fb percentages for each bin.


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.

Inherited class methods

Instance Methods

Inherited instance methods