1
$\begingroup$

Let's say I have an audio clip of $N$ samples. I want to describe every $10$ ms of audio with an FFT of size $1024$, without information bleeding over from other $10$ ms windows. Given that the sample rate of this audio clip is a standard $44100$, I can't do that with a regular FFT. A regular FFT would give me $441 / 2 = 220$ bins.

Is it possible to take many, many FFTs of differing sizes over different windows to infer a larger frequency resolution for a smaller timeframe? Let's say I take a $1024$-FFT for each sample range increasing by $t = 1$ (samples $0$ through $2047$, then samples $1$ through $2048$ and so on), then a bunch of $512$-FFTs, then a bunch of $256$-FFTs. Would this large dataset contain enough useful information to "subdivide" the bins of the smaller, $220$-FFT?

$\endgroup$
1
$\begingroup$

You can use interpolation (or equivalent zero-padding) to get your desired sub-divided 512 frequency points from your 220 FFT bins. Use a Sinc interpolation kernel for a rectangular window, or the transform of the window for other windows. If you want more real frequency resolution (as in clear separation of multiple peaks present in the frequency spectrum), you will have to use (overlap or "smear") more than 10 mS of data (perhaps over 50 mS).

$\endgroup$
0
$\begingroup$

If you want to completely isolate information leaking from neighboring windows, the only way to describe $441$ samples of audio with $1024$ $DFT$ bins, it to zero pad the audio samples. Although, this will only be the interpolated version of $441$ $DFT$ bins, which will not provide any additional information.

A regular FFT would give me 441/2=220 bins.

This is valid because the signal has only $real$ part, (and almost all practical signals have). Consequently, the spectrum has Hermitian symmetry.

Incidentally, this is classical time-frequency localization problem. You may look into Short Time Fourier Tramsform (STFT), wavelets analysis. The solution which you have suggested, closely resembles with wavelet analysis.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.