Reply by robert bristow-johnson●November 30, 20052005-11-30
Florian Schmidt wrote:
> Hi,
>
> i searched the web for quite some time now and just don't grok how to
> normalize when doing partitioned frequency domain convolution.
>
> Basically for an unnormalized FFT/IFFT pair (i use fftw, so all the
> FFT/IFFT i use is unnormalized), the necessary normalization factor
> would be 1/N applied once or 1/sqrt(N) applied twice. But now i have
> IFFT(FFT(signal)*FFT(response)) and i wonder what normalization factor to
> use. And especially: where :)
shouldn't matter where if you're doing this in floating-point. there
should be a 1/N attached to the IFFT if "FFT(response)" is the DFT of
the impulse response h[n].
> I tried all kinds of combinations with N and sqrt(N) and even third
> root(N), but everything is either too loud or too quite or seems to
> depend on partitionsize (a sign for getting it wrong). What do i miss?
perhaps your impulse response h[n] is large enough to give it that gain
to make it too loud.
> Did i simply misinterpret my output?
>
> Right now i use 1/(3 * N) normalization at output which seems to work
> ok.
sounds like, to me, that all of your h[n] or the FFT of it (H[k])
should be reduced by a factor of 3.
r b-j
Reply by Florian Schmidt●November 30, 20052005-11-30
Hi,
i searched the web for quite some time now and just don't grok how to
normalize when doing partitioned frequency domain convolution.
Basically for an unnormalized FFT/IFFT pair (i use fftw, so all the
FFT/IFFT i use is unnormalized), the necessary normalization factor
would be 1/N applied once or 1/sqrt(N) applied twice. But now i have
IFF(FFT(signal)*FFT(response)) and i wonder what normalization factor to
use. And especially: where :)
I tried all kinds of combinations with N and sqrt(N) and even third
root(N), but everything is either too loud or too quite or seems to
depend on partitionsize (a sign for getting it wrong). What do i miss?
Did i simply misinterpret my output?
Right now i use 1/(3 * N) normalization at output which seems to work
ok. But what is the right number? As i use padded FFT/IFFT actually N is
2*N', where N' is the partitionsize.
Flo
--
Palimm Palimm!
http://tapas.affenbande.org