FFT within a moving window of an audio signal
44 views (last 30 days)
Show older comments
I have amplitude-time data from a microphone (attached 'Mic Data.mat' file). This is data that was gathered with a sampling rate of 44100Hz, over the period of around 30.01 seconds (resulting in a total of 1323441 samples).
I would like to analyse this time-domain data in the frequency domain, therefore, will require an FFT. However, in order to get an understanding of how the frequency changes over time, I need to analyse the data in smaller frames, for example, every 441 samples (or every 1/10th of a second). This will hopefully produce around 3000 frames of frequency domain plots.
My thought process would be to create a loop, which will create a rectangular window of width 441, whilst padding all other values outside this window to 0. FFT will then be carried out for the samples within the window, producing an amplitude-frequency plot for frames 0-440. The next iteration will then carry out the same process for samples 441-881 etc.
I am struggling to get this down to code. Could anyone please guide me in the right direction?
All help is greatly appreciated.
Thanks in advance.
0 Comments
Accepted Answer
More Answers (0)
See Also
Categories
Find more on Spectral Measurements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!