I Built Smart Radio That Auto-Skips Talk and Ads by Using ML
Global radio map with browser-side ML ad-skip beats obvious, but streaming radio already solved.

Radio Garden meets smart player: in-browser ML talk detection without server-side audio.
Radio listeners seeking music-only streaming with discovery features
Radio Garden · TuneIn Radio · Radionomy
The Unique Part: In-Browser ML The core feature is an "AI Skip Talk." Instead of processing audio on a server, it uses the Web Audio API to capture the stream locally and runs a lightweight classification model directly in your browser. It estimates the "music vs. speech" probability in near real-time.
If you have the filter enabled, it will automatically trigger a "next" command to hop to another station in your playlist or a random location on the globe the moment a DJ, news segment, or ad starts.
Privacy: No audio data ever leaves your machine; inference is entirely local.
The Tech Stack/Features: - WebGL + Point Clustering: To render 70,000 stations across 11,000 locations smoothly. - In-browser Inference: Uses a small model plus stream-level heuristics to handle edge cases. - Media Key Integration: Full support for physical keyboard and system-level Next/Prev buttons. - Persistence: Sign-in is available to sync playlists and favorites across devices, but the core explorer works without an account. - Online activity: You can see in real time other people on the site, where they are on the globe, what they listened to, and what stations they liked. - Simple games to kill the time as you are listening to stations, like Solitaire, Minesweeper, etc.
The Trade-offs & Challenges: Running a WebGL globe and real-time audio analysis simultaneously is heavy on the CPU. To handle this, I’ve implemented: - Automatic performance detection that downgrades visuals on lower-end machines. - A manual toggle to kill the audio processing if you just want to use the globe as a standard player. - A talk sensitivity slider for the ML model, so you can tweak it yourself.
What I’d love feedback on: - Performance: How does your CPU/fan react? Is it manageable? I’m looking for ways to further optimize the client-side ML or perhaps it is okay to bring even heavier models with more accuracy. - Classification Accuracy: How useful is it? Does it detect talking in most of the cases, or is it sometimes useless? On MacBook it works ok-ish. Ads with music are difficult but when music changes to pure talk, the site does its work and hops to another one.
Let me know what you think! I am interested if this project is worth further investment, building a mobile app, etc.
Global radio map with browser-side ML ad-skip beats obvious, but streaming radio already solved.
Community radio station launch—worthy mission, but not a tech product or innovation.
Radio-browser.info search built into a TUI player—niche but genuinely useful.
Clean radio player, but TuneIn and Radio Garden already dominate this space.
Icecast alternative with Cython optimizations, but streaming servers are well-solved territory.
Time-travel radio by vibe instead of genre—haven't seen this approach before.