A while ago, I just wanted to do something simple: drop in an audio file, see the frequency spectrum, find suspicious peaks, and move on.
But most tools I found were either 🖥️ full desktop apps, 🧱 more complicated than I needed, ☁️ uploading audio to a server, or just felt a little outdated.
So I started wondering: why can't this just run entirely in the browser?
That question turned into Online Spectrum Analyzer: 👉 https://onlinespectrumanalyzer.com
🔒 Keep the audio local
The main idea was simple: your audio shouldn't need to leave your device just to calculate an FFT. Modern browsers already have the Web Audio API, so the whole flow can stay client-side: audio file → decode locally → analyze → visualize.
No account. No mandatory backend upload. I also added 🎙️ microphone input, so you can inspect live audio directly.
📊 The FFT was the easy part
Getting frequency data wasn't really the hardest part. Making it readable was.I spent more time than expected tweaking FFT size, smoothing, frequency scaling, peak detection, low-frequency visibility, and rendering performance.A raw FFT graph can look technical while still being surprisingly hard to interpret. I wanted someone looking for a 50/60 Hz hum to be able to spot it without first studying DSP.
🌈 Then I added a spectrogram
This became one of my favorite parts. A spectrum shows what frequencies exist right now. A spectrogram shows how frequencies change over time.
That makes things like electrical hum, background noise, sudden transients, high-frequency tones, and strange sections of audio much easier to spot visually.
Sometimes a problem is easier to see than to hear.
🤯 The browser is surprisingly capable
This project reminded me how much signal processing can now happen directly in the browser. You already get 🎵 audio decoding, 🎙️ microphone access, 📈 real-time analysis, 🧮 FFT data, 🖼️ canvas visualization, and pretty decent client-side performance.
A few years ago, I probably would've built this as upload → server → process → return result. For this kind of tool, that would actually make the experience worse.
🛠️ What it does now
Right now it supports:
🎧 audio file analysis
🎙️ live microphone input
📊 real-time frequency spectrum
📍 peak frequency detection
🌈 spectrogram visualization
🔒 local browser-side processing
I'm still improving it. One direction I'm interested in is making it more useful for practical audio debugging: hum, noise, clipping, resonances, strange tones, recording issues, etc. Without turning it into a giant DAW.
If you work with audio, Web Audio, music production, podcasting, or browser DSP, I'd be interested to know what you normally look for in a spectrum analyzer.
👉 Try it here: https://onlinespectrumanalyzer.com
Feedback is welcome 🙂
Top comments (0)