pvstanal — Phase vocoder analysis processing with onset detection/processing.
pvstanal implements phase vocoder analysis by reading function tables containing sampled-sound sources, with GEN01, and pvstanal will accept deferred allocation tables.
This opcode allows for time and frequency-independent scaling. Time is advanced internally, but controlled by a tempo scaling parameter; when an onset is detected, timescaling is momentarily stopped to avoid smearing of attacks. The quality of the effect is generally improved with phase locking switched on.
pvstanal will also scale pitch, independently of frequency, using a transposition factor (k-rate).
ifftsize -- FFT size (power-of-two), defaults to 2048.
ihop -- hopsize, defaults to 512
ioffset -- startup read offset into table, in secs.
idbthresh -- threshold based on dB power spectrum ratio between two successive windows. A detected ratio above it will cancel timescaling momentarily, to avoid smearing (defaults to 1)
ktimescal -- timescaling ratio, < 1 stretch, > 1 contract.
kamp -- amplitude scaling
kpitch -- grain pitch scaling (1=normal pitch, < 1 lower, > 1 higher; negative, backwards)
kdetect -- 0 or 1, to switch onset detection/processing
ktab -- source signal function table. Deferred-allocation tables (see GEN01) are accepted, but the opcode expects a mono source. Tables can be switched at k-rate.
kwrap -- 0 or 1, to switch on/off table wrap-around read (default to 1)