Tagged: whisper

MultiScan SDR: A Multi-Band Pseudo-Spectrum Scanner for RTL-SDR, HackRF, Airspy and SDRplay

Thanks to Mike for writing in and sharing his freeware program "MultiScan SDR". It's a fast, wideband scanner for Windows and macOS that sweeps several bands side by side and stops only on real transmissions. It supports the RTL-SDR, HackRF, Airspy, SDRplay RSP series, and Fobos SDR.

The main feature is what Mike calls a "pseudo-spectrum", which doesn't display raw power. Instead, MultiScan sets the noise floor of every frequency to 0 dB, so each channel shows how far it rises above its own local noise. A channel opens only when modulation appears, so unmodulated carriers and short wideband noise spikes are ignored. Other features include up to 10 VFOs, each with its own audio waterfall, band plans for 8 countries, SDR# frequency list import, lockouts with automatic receiver spur detection, and local speech-to-text using Whisper. It also includes ADS-B, AIS, 433 MHz sensor, ACARS, and APRS decoders, plus web control so you can listen from a phone or tablet on your home network.

We note that a basic version of the software is free, but does not appear to be open-source, and is restricted to 2 VFOs. Recording, the decoders, speech-to-text, and web control are unlocked with a support payment (€20 suggested, or any amount you choose). A PRO version that adds a signal classifier and support for multiple SDRs at once is listed as coming soon. Windows users will need to install the WinUSB driver via Zadig first. More information, including a user guide in English, German and French, can be found on the MultiScan SDR website.

Multiscan-SDR Scanner screenshot showing the pseudo-spectrum
MultiScan SDR Scanner screenshot showing the pseudo-spectrum

AI Disclaimer: The author has disclosed that this software has been created with the help of AI.

NightDX: Automated Overnight Shortwave DX Listening with an Airspy HF+

Thank you to Marco Zennaro for writing in and sharing NightDX, a free terminal app for macOS, Windows and Linux that lets an Airspy HF+ do your overnight shortwave listening for you. The menu interface is deliberately styled like early-90s DOS software.

NightDX pulls the EiBi, AOKI and HFCC broadcast schedules, plus live solar flux and Kp from NOAA. A propagation model then predicts what should reach your location and calibrates itself against what your own radio hears. The HF+ sweeps all the bands in about 10 seconds to see which carriers are really there, and overnight NightDX records the best stations, putting ones you've never logged first.

Optional AI features can then label each recording as speech, music, or noise using an AudioSet classifier, and transcribe and translate it with OpenAI's Whisper, which helps when writing reception reports. In the morning, a browser report shows the recordings with audio players, one-click reception reports drafted in Gmail, and a QSL card log.

We note that NightDX doesn't claim to identify stations. It shows schedule names as candidates and flags recordings where the evidence doesn't fit, such as the wrong language or a signal far too strong for the predicted path. Only the Airspy HF+ (Discovery or Dual Port) is supported for now, so there is no RTL-SDR support. Marco notes that other SDRs such as the Perseus and Elad are being looked into. The code is open-source under the MIT license and available on GitHub.

NightDX Screenshots
NightDX Screenshots

AI Disclaimer: Marco notes that NightDX was built with the help of Claude.

FalconSDR: An Open-Source RTL-SDR Scanner and Recorder with Automatic Whisper Transcription

Thank you to Rafał for writing in and sharing his open-source project FalconSDR, a free scanning and recording program he's been working on over the last few months. Rafał notes that after getting into RTL-SDR listening, he found that popular SDR programs didn't have the scanning and recording features he wanted.

FalconSDR can scan multiple bands or channels, even when they are far apart, with separate settings for each band and a blacklist for skipping birdies and unwanted channels. A "recency boost" feature sends the scanner back to channels with recent activity, and it can record multiple transmissions at once. Recordings go into a searchable library and can optionally be transcribed to text with Whisper. In hybrid mode, a server handles recording and a PC handles transcription.

The interface runs in a browser, either locally or on a headless server, so you can reach it from a PC or phone on your network. RTL-SDRs are supported natively, and Rafał has tested the program for months with an RTL-SDR Blog V4. Other SDRs work via SoapySDR. Linux and Windows 11 have been tested, but the macOS builds are marked as experimental. The code is open source under GPLv3 and available on GitHub.

FalconSDR Screenshots
FalconSDR Screenshots

AI Disclaimer: While the author does not disclose it, the repository includes an AGENTS.md file described as "Guidance for AI coding agents working in this repository", so it is our opinion that this software may be coded with the help of AI.

Scanner Command: Mapping Incidents from Live Radio Calls and ADS-B to Airband Voice with AI

Recently, we posted about DeepSDR, which is a program that automatically transcribes voice data from public safety radio communications and uses an LLM to categorize and plot incidents on a map as they happen.

In that post, we noted that we expect to see more projects like this soon, and sure enough, another program called "Scanner Command" with a similar angle has been submitted to the blog by author Benjamin Blood. Like DeepSDR the software listens to public safety and then uses voice transcription and an LLM to automatically understand, categorize and map incidents on the map. One additional feature that Scanner Command has is a fun tool that correlates ADS-B data with airband voice. Benjamin explains it best:

Scanner Command turns a radio scanner into a live AI incident map. A Uniden SDS200 covers the trunked digital public safety side (the LA area's P25 Phase II system, with ProScan driving the scanner and handing off every recording), and two $45 RTL-SDR dongles handle the rest, one decoding ADS-B with readsb, one capturing VHF airband transmission by transmission. Everything gets transcribed locally with Whisper, an AI extraction pass works out what happened and where, and about 30 seconds after a call ends it's a color-coded pin on the map with the audio one click away. Location matching is honest on purpose: an exact intersection match gets a solid pin, an area-only match gets a dotted one, and it tells you which.

Here's the design idea underneath it, and what I think separates it from the other transcribe-and-map projects out there: this is built for tactical situational awareness when the grid's down. The system does its learning while it's online, building its own gazetteer of local streets and places, learning unit callsigns and talkgroup names, priming the transcriber's vocabulary from real local traffic, precisely so it's more capable when it's cut off. Map tiles, geocoding, and hazard data are all cached locally with that scenario in mind.

The picture in my head has always been: grid's down, the box is running on backup power serving wifi, and my neighbors connect with their phones and everyone can see what's happening around us, instead of one guy hunched over a scanner relaying it. It's not shelf gear you dust off when something happens; the whole point is that running it every day is what trains it for the day you need it. Transcription is already fully local, the LLM extraction step currently uses a hosted model when online (it runs me about a dollar a day at 24/7), and the next build phase is a GPU box that closes that last gap with a local model.

The feature people are having the most fun with is the airband/ADS-B correlation. The system pulls spoken callsigns out of airband transcripts and matches them to ADS-B tracks by time and geometry, with match windows scaled by altitude and speed, plus hex-to-tail-number derivation. Click a plane on the map and hear what its pilot actually said, with a confidence badge when the match came from a partial readback. Beyond that: an ATAK feed (CoT/KML/GeoJSON), twice-daily AI briefs, a BOLO board, incident threading with a unit activity board, and helicopter orbit detection.

ADS-B aircraft position data automatically linked to airband voice transcripts
ADS-B aircraft position data automatically linked to airband voice transcripts

Benjamin adds that a public demo is available at https://demo.scannercommand.com. But he notes that "the public demo is a replay of two real days of traffic from my setup".

The software has not yet been released, and it does not appear to be free or open-source. There is a signup waitlist available on the scannercommand.com website.

This is an exciting time with AI not only helping to rapidly develop new software, but now being used to summarize and condense the vast amount of information about the state of the surrounding world available in the RF spectrum. 

Scammer Command example mapped incident report
Scammer Command example mapped incident report
I Turned My Police Scanner Into a Live AI Incident Map (24/7)

DeepSDR Updates: Live Public Safety Incident Map with an RTL-SDR, Whisper and an LLM

Last week we posted about Hubquhq's DeepSDR project (project contact page), which collects transcribed voice data from multiple public safety radio channels and then uses an LLM to summarize and plot incidents on a map.

Recently, he wrote in again and wanted to share additional information about the project and how it works after receiving a few questions from interested parties. He writes:

I run every stage in a separate docker container: Capture (I capture audio as longer sessions for archiving, and separately just short sessions where there's no silence for further processing. I tried using VAD to detect voice, but with radio it was missing some talk, so I just use ffmpeg) > Transcribe > LLM > Finding latitude and longitude for addresses > Grouping connected conversations. 

He has also provided a PDF explaining how DeepSDR works in more detail, which you can download here. 

DeepSDR Incident Map
DeepSDR Incident Map
DeepSDR Incident Map
DeepSDR Incident Map

DeepSDR: Building a Live Public Safety Incident Map with an RTL-SDR, Whisper and an LLM

Over on Reddit and YouTube, user Hubquhq has shown how he created a live incident map using an RTL-SDR, Whisper and an LLM. The idea behind the system is to monitor multiple public safety voice communication channels with an RTL-SDR, transcribe everything into text using Whisper, and then use an LLM to categorize events and extract details such as addresses. Categorized incidents are then plotted on a map, allowing the user to visualize patterns. 

For example, in his YouTube video, he shows how he mapped cardiac, animal, drug overdose, vehicle collision, rescue, and hazmat events over time, building a powerful database of what is happening in his city.

The program and code does not seem to be available for download anywhere, but Hubquhq does provide a contact link for anyone interested. 

Systems that can monitor every RF voice and data channel on the spectrum and summarize them via an LLM are something we expect to see more of in the future as AI and LLMs improve.

Updates: Updated post with more information here.

DEEP SDR: How I Built an Incident Map

RadioTranscriber: Real-Time Public Safety Radio Transcription with Whisper AI

Over in our new forums, user Nite has shared a new open-source project that he's created called RadioTranscriber, a real-time speech-to-text tool for public safety radio feeds using OpenAI’s Whisper large-v3 model. The idea is to take live scanner audio, such as authenticated streams from Broadcastify, and continuously turn it into readable text with minimal babysitting. The project grew out of earlier experiments with Radio Transcriptor, which we posted about back in June, but quickly evolved into a more robust, long-running setup with better audio conditioning and fewer of Whisper’s common hallucinations.

Under the hood, RadioTranscriber is a Python script that pulls in a live stream, cleans it up with filtering, normalization, and WebRTC VAD, then runs Whisper large-v3 with beam search for transcription. A set of custom “hallucination guards” strips out common junk text and replaces alert tones with simple markers, while daily log rotation and basic memory management let it run unattended for long periods, even on a modest CPU-only machine. Although it’s tuned to the author’s local dispatch style, the config and prompt are easy to adapt, and the full code is available on GitHub for anyone who wants to experiment or build on it.

How OpenAI's Whisper Works
How OpenAI's Whisper Works

RadioTransciptor: Real Time Radio Speech to Text Transcriptor using AI

Thank you to user theckid from our forums for submitting news about the release of his latest project called "RadioTranscriptor". RadioTranscriptor can be used for real-time speech-to-text transcription, which is especially useful when you want to log radio communications and create searchable text files. theckid writes:

I just released an open-source Python tool that does real-time radio transcription using OpenAI’s Whisper model. It uses voice activity detection to only transcribe when speech is actually happening — great for monitoring radio chatter or voice nets on HF/VHF/UHF.

It’s designed for use with SDRs (Software Defined Radios) where audio is routed into the script. It performs:

  • Live microphone or SDR audio monitoring
  • RMS-based voice activity detection (VAD)
  • Automatic transcription with Whisper
  • Timestamped logs saved per session
  • It’s perfect for:
  • Ham radio operators
  • Emergency scanners
  • Broadcast archiving
  • Signal analysis enthusiasts

The AI model used is Whisper by OpenAI. The software uses NVIDIA CUDA GPUs when available and defaults back to CPU if none are available.

RadioTranscriptor Block Diagram
RadioTranscriptor Block Diagram