app
2026-08-25
I have been working on Pocket Spectrum for a while now and it feels good condensing the work into an application. My initial vision was to create a tool to measure humming but has expanded as it has been more difficult than expected to detect low frequency humming. Currently the Android app is in the closed-testing track and will hopefully soon move into the open-testing track.

Pocket Spectrum

The tool is a mix of c++, c++ template/meta-programming, open-source DSP libraries, imgui/opengl rendering and some glue to bind it all together.

I have been working with c++ for many years and I still enjoy it even when it has gotten some bad reputation. I can still squeeze every last performance out of c++ which to some degree is needed for real-time spectrum analysis. Initially the application only showed one spectrum at a time, but profiled and optimized it into the layout it has now, showing 6 different real-time spectra. Additionally I have applied c++ template and meta-programming techniques to ensure correctness at compile-time allowing me to be more confident when I perform large refactoring. The digital signal processing pipeline uses PFFFT for Fast Fourier Transform and iir1 for infinite impulse response filters. These are combined into multiple processing chains showed as the multiple spectra on the application dashboard. The thing I enjoy creating this tool is the visual aspect of the application. For many years I have develop complex solutions and tools which all share the same of being hidden. Hidden in the sense of being executed on some server or chip no one can see, being some abstract process improvement, being some automation flow from build to server deployment. This tool is the complete opposite. It is in your face and will hopefully help, or just show the mystery and beauty of sounds.