fft blurring effect
hello,
how exactly does the "blurring" effect work, wich is part jf charles
"07-stochasilent-pvoc" patch. of course i read jf notes about the patches,
but i did not get the point… (maybe because of my english)
well, as i like to build that with ftm i need to understand that.
thanks for any explainations or hints…
johannes
oops,
of course i meant: how does the "blurring" effect work exactly, …
instead of playing each fft frame in the correct order, it randomizes the order in which the frames play according the amount of 'dither' you apply (blur width parameter). it is this bit of the patch:
There are probably better ways to do it, like treating the spectral representation as an image that you can apply a gaussian blur to (2d convolve) and then play through without the playback jitter...
the good side of stochastic blur from J.F. Charles is that the blur works:
- at audio rate
- it presents negligible CPU burden
- removes the frame effect
- removes the mechanical looping effect when reading speed is 0
PS: noise~ in "stochastic blur" patch functions as random generator at audio rate. So each sample, some random number is added to the X (frame) reading position. And also have in mind that sampling rate inside pfft~ is overlap times bigger as in parent patch, therefore noise~ has to be inside pfft~
thanks for help guys,
when i understand you right its about switching between the frames at audiorate.
regarding figure 8 in jf´s paper – one thing is not clear to me.
on the right jf illustrates how to blur over 5 frames. in every row and over 5 columns (frames) one amplitude value is used for the synthesis of one frame, no?
doesn´t that mean a mixture of the amplitude values over 5 frames? or am i wrong and it just playes one or another frame.
maybe the term "vertical synchronization" is not clear to me.
thanks, j
rather think of switching between bins from neighboring frames. the reading direction is vertical, from bottom to the top, so it's very similar to asynchronous granular synthesis - instead of reading successive samples (or bins in PV case), you randomly jump forwards and backwards in time in some area around reading position. the width of the area is defined by blur amount (multiplying values generated by noise by some amount)...
so basically your FFT frame is still the same size, as without blur, only the bins for resynthesis are randomly taken from surrounding frames. so the spectrum of blurred frame consists of frequencies and amplitudes from surrounding frames.
thanks t,
i thinks its straight forward. the reading direction is vertical
because of the output of the 3rd outlet of fft object, indicating the bin index, wich starts at 0 and counts up to framesize.
what you mean with:
And also have in mind that sampling rate inside pfft~ is overlap times bigger as in parent patch, therefore noise~ has to be inside pfft~.
what is the realtion between the overlap of the frames and the random distibution?
anyway, everthing nice explained.
danke, johannes