FFT: spectral smoothing
Hi,
I've been studying this paper about convolution techniques in Max/MSP:
http://www.music.buffalo.edu/faculty/lippe/pdfs/annarbor.pdf
It describes two techniques to increase the spectral intersection between two sounds.
One is compression, which I was able to build. The other is amplitude spectrum smoothing. (see section 2.1)
I have made this patch for the spectrum smoothing.
But I don't think it works correctly.
It smooths the amplitudes over multiple bins. But I think something is still missing.
Does anyone know how to do this?
you need to look at MSP tutorial 26, convert real/imag to mag/phase; this is a start, but the phase distortion has not been addressed (you can do that):
I tested the polar version aswell. But like you say, there is still this phase distortion.
It's there because there isn't any useful phase information in the empty bins, right.
How can I fix it?
as far as I understand the bins arent 'empty', they just have zero mag or close to zero; there will be leakage to other bins due to artefacts of the windowing of the signal, anyway, which will give the theoretically zero mag bins a mag value. Phase is completely independent of mag, and I think it probably needs to be kept track of in this application, even if the mag is zero for a particular frame-- I think you need to use framedelta, phaserap and frameaccum to do this
Thanks Terry. I'll try it out. I had presumed that I wouldn't need framedelta/phasewrap/frameaccum for convolution purposes. But I can kind of see that something has to be done with the phase in this case.