Libary used for FFT

565 views
Skip to first unread message

Daniel Schreiber

unread,
Feb 4, 2020, 6:04:10 AM2/4/20
to Spectroid
Hello Carl,
Thanks for the great application, it helped me a lot detecting VLF electromagnetic Signals with an antenna connected to the microphone jack.

Now I want to build a customized app for myself. (I want to add bandwidth-filters and an algorythm for detecting specific Signals.)
Do you have any recommodations on source codes, libaries etc. for making such a detailed FFT, or did you write it all by yourself?


Best regards,
Daniel

Evan Reed

unread,
Feb 11, 2020, 11:36:56 AM2/11/20
to Spectroid
I've used a bunch of other android apps for analyzing audio but I just found Spectroid today and it's hands down the highest quality app on the store for this. The graph renderings are really really well done I was amazed at how fluid and customizable they were and I was also curious about the tech used. Would love to dive into the source repo if it's public by chance, otherwise it'd be great to find out any libraries being depended on for those silky smooth high-frame rate charts.

If it's not already, y'all should consider open-sourcing it I mean it's clear that whatever dev(s) working on this are not your typical adware loving android spam dealers and instead likely a dev who cares a lot about the app's real-world value. All I'm saying is that with high-quality passion projects like these, you can bet there'd be a community willing to contribute on bugs/features or maybe even support financially via Patreon or something 😉

Carl Reinke

unread,
Feb 14, 2020, 8:05:04 PM2/14/20
to Spectroid
JTransforms[1] is the FFT library that I used, but it doesn't do anything that another FFT library couldn't.

I used mkfilter[2] to design the low-pass filter used for decimation.

Carl Reinke

unread,
Feb 14, 2020, 8:05:38 PM2/14/20
to spec...@googlegroups.com
The spectrum/spectrogram UI control is entirely custom-built -- no external libraries, just Android APIs.

Spectroid is not open source.  I love open source, but it's far too easy for someone to take the source of an app, slap ads on it, and publish it in the Play Store or one of the other app stores.  I find that idea revolting, so I am compelled to not open source it.  (Perhaps I could select a license that disallows commercial use, but it would be troublesome to enforce it.)

Aguaviva

unread,
May 18, 2021, 7:17:29 AM5/18/21
to Spectroid
I actually wrote an open source app called Spectrogrammer and you can check its source code here: https://github.com/aguaviva/Spectrogrammer

It can go up to 8192 taps FFT, it uses multithreading, native code and OpenSL for capturing low latency audio, (it is really fast!)

I hope this helps (and Carl doesn't mind me talking about it here! otherwise please remove my post)
Cheers
Raul

Carl Reinke

unread,
May 18, 2021, 1:05:15 PM5/18/21
to Spectroid
I don't mind people plugging their relevant open-source projects.  You should put up an APK so that people can play with it.

--Carl
Reply all
Reply to author
Forward
0 new messages