Using the Fourier transformation I can translate a signal from the time-domain to the frequency-domain. If I divide the frequency axis into intervals, how can I calculate the audios signals energy for each of these intervals?
-
2$\begingroup$ Sum the squares of the magnitudes of the DFT coefficients for each range of frequency you are interested in. $\endgroup$– pichenettesApr 3, 2013 at 20:19
-
$\begingroup$ Or if you are talking about a real Fourier transform (continuous time), square the magnitude of the transform and integrate over each interval. $\endgroup$– user2718Apr 3, 2013 at 20:31
1 Answer
You may research for spectrogram. The above comments from pichennets and B Z are correct, but you have to pay attention to the effect of just take some subset of coefficients and calculate the power. When you take this way you're applying a retangular window in frequency, and some peaks in the frequency domain power. You must apply a window in time domain before take the FFT and calculate the power.
- I want to add this as a comment, since it's not a real answer but I'm not abble to do this.
-
$\begingroup$ so after dividing my signal up into frames I should apply e.g. a hamming window before calculating the Fast Fourier transformation - or is their something that I am missing? $\endgroup$– MortenApr 9, 2013 at 13:09
-
$\begingroup$ Yes, I was developing a similar application and my first thought was to use Parseval's rule to the frequency domain signal but the results was not as expected this link is a great resource ccrma.stanford.edu/~jos/sasp/Audio_Spectrograms.html#19571 I didn't finish the application I was working so I can't tell you the best window approach, i remember that I was planning to use a filter bank but I hadn't developed this idea. $\endgroup$ Apr 9, 2013 at 13:47