DSPRelated.com
Forums

Overlap-add with Spectral Freeze real-time plugin

Started by rmor...@gmail.com March 25, 2009
Hello all,

I'm trying to create a spectral freeze plug-in and I'm a bit confused about the overlap add method. This is what I'm doing so far.

Windowing (hann) -> FFT -> mess with spectral data -> IFFT -> Windowing

Doing this the output sounds a bit strange, even if I don't change any of the spectral data, my guess is because I'm not doing any overlap. Would this be a spot where the overlap add method is used? If so, how much overlap would be needed?

Thanks,
Ryan

Hi Ryan,




What exactly is your plugin intended to do? 




My first guess about that the window that you apply the first time might be gulti.


If it has coefficients near to zero then you can expect huge round noice close to the ends of the block after the last windowing (i suppose it is DE-windowing, the operation reverse for the first windowing)




So the thing is that you do FFT not on the original data and the problem might be somewhere in the conversion between original and windowed data.




Sergey


Hello,

I have also made a project with overlap add method regarding wiener filtering.
Now, the problem with Hann window (actually with any window other than rectangular) is that it isn't constant. So Just by windowing your signal you have done some distortion. So overlap add method would be advisable.
On the mathworks homepage (matlab) there are a lot of overlap-add examples in diffrent applications.
I would advise you to start with a 50% overlap, this is standard. And then you can decrease it is you application permits that.
Hope this was of any use

Hello all,
>
>I'm trying to create a spectral freeze plug-in and I'm a bit confused about the overlap add method. This is what I'm doing so far.
>
>Windowing (hann) -> FFT -> mess with spectral data -> IFFT -> Windowing
>
>Doing this the output sounds a bit strange, even if I don't change any of the spectral data, my guess is because I'm not doing any overlap. Would this be a spot where the overlap add method is used? If so, how much overlap would be needed?
>
>Thanks,
>Ryan