Faster Audio Library FFT Implementation

Status
Not open for further replies.

duff

Well-known member
This a followup to this threads discussion here. You can download the working library at my github account here. Just install it as you would any other library.

I'm pretty excited to report that I and at this time one other have reported 30% usage reduction from the current library. The magnitude data returned is identical to the old algorithm since it is exactly the same algorithm just a few tweaks and adjustments where made for use with the Audio Library. I actually see many more improvements in the pipeline like upgrading to v1.4.5 which gives about 10% reduction over v1.1.0. The only downside is a 4 Audio Block delay in the output from the original version. I'm already know how to make it just a 3 Audio Block delay so I'll update sometime today for that.

I'm looking if anyone could try this library which works exactly like the original FFT library, to use it in actual project and follow up here. I'm hoping if there are no snags this could get merged into the Audio library.
 
So i proved to myself that the 3 stage technique does in fact produce the same output as the stock cmsis dsp fft used by analyzie_fft1024 object by just putting all three stages in the last state(7), they have roughly the same cpu usage also (50%). Now I need to figure out what spreading out these fft stages to consecutive states(5,6,7) does to the overall functionality of the fft in a realtime project. I implemented the inverse fft into three stages also so maybe pitch shifter is possible without eating up all the cpu resources?
 
Status
Not open for further replies.
Back
Top