📈 GH Trending Explorer 🎲 Surprise me

← all repos

dhihacker / AirBandScan

git clone https://github.com/dhihacker/AirBandScan.git v1.3.1 · today

Scans the aviation band with an SDR, records every voice call on its own, and lets you listen, browse, and download them from a web browser. Classifies voice/non-voice signals, with live spectrum and spectrogram views. Works with RTL-SDR, HackRF, and Airspy on Windows and Linux.

—
stars, 24h
+37
stars, 7 days · #1,142
+37
stars, 30 days · #7,702
37
★ total · +37% this week
4
forks · 0 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageC++
LicenseGPL-3.0
Created2026-10-14 (6d ago)
Last pushtoday
Watchers0
OwnerUser

GitHub topics

Links

README excerpt
### Automatic VHF airband scanner and voice recorder
Scans the aviation band with an SDR, records every voice call on its own, 
and lets you listen, browse and download them from a web browser. 
Also decodes satellite pictures: SSTV from the ISS and CubeSats, and Meteor-M LRPT weather images.
Features · Supported SDRs · Screenshots · Install · Usage · Satellites · How it works · API
### Support the project
---
## Features
- 📡 **Automatic scanning:** hops across your frequency ranges (118–137 MHz by default) and stays on a range while someone is talking.
- 🎙️ **Records every call:** each transmission is saved on its own, with a short pre-roll so the first word isn't cut off.
- 🗣️ **Voice detection:** a built-in speech detector separates real voice from data bursts, dead carriers, tones and noise.
- 🎧 **Play in the browser:** click a waveform to seek, or turn on auto-play for new calls.
- 💾 **MP3 and WAV:** voice calls are saved as MP3 automatically; any recording can be downloaded as MP3 or WAV.
- 🌈 **Spectrum page:** live spectrum, waterfall and activity history, plus a spectrogram of every signal that was *not* recognised as voice.
- ✈️ **Voice only:** ACARS and VDL2 data channels are ignored by default.
- 📻 **AM or NFM:** AM for the airband, or narrow-band FM (marine, PMR, amateur, business radio), with 8.33 / 25 / 12.5 / 6.25 / 5 kHz channel rasters.
- 🛰️ **Satellite images:** SSTV pictures from the ISS (ARISS events, PD120 / PD180) and CubeSats (Robot 36 / 72, Martin, Scottie, all PD modes), and **Meteor-M N2-3 / N2-4 LRPT** weather images (false-colour composite plus every MSU-MR channel), decoded live and kept in a gallery. Doppler is followed automatically, so no tracking software is needed.
- ⚙️ **Web settings:** device, gain, ranges, thresholds and MP3 options, all from the browser.
- 🖥️ **Single native program:** C++17, no Python, runs as a desktop app or headless server on Windows and Linux; open it from any phone or PC on your network.
## Supported SDRs
| SDR | Models | Sample rates | Build requirement |
|---|---|---|---|
| **RTL-SDR** | Any RTL2832U dongle: RTL-SDR Blog V3 / V4, Nooelec NESDR (Mini, SMArt), generic R820T / R820T2 / R828D / E4000 sticks | 1.024 – 3.2 MS/s (2.4 recommended) | `librtlsdr` (always required) |
| **RTL-SDR over the network** | Any `rtl_tcp` server: `rtl_tcp` on a Raspberry Pi / PC, SDR++ / SDR# rtl_tcp server, Android "RTL-SDR driver" | 1.024 – 3.2 MS/s (2.4 recommended; LAN bandwidth ≈ 2 bytes per sample) | none (built in) |
| **Airspy** | Airspy R2, Airspy Mini | 2.5 · 3 · 6 · 10 MS/s | `libairspy` (optional) |
| **Airspy HF+** | Airspy HF+ Dual Port, HF+ Discovery (VHF input: 60 – 260 MHz) | 192 – 912 kS/s (768 recommended) | `libairspyhf` (optional) |
| **SDRplay** | RSP1, RSP1A, RSP1B, RSP2, RSPduo, RSPdx, RSPdx R2 | 2 – 10 MS/s | SDRplay API 3.x (optional) |
| **HackRF** | HackRF One | 2 – 10 MS/s | `libhackrf` (optional) |
| **PlutoSDR** | ADALM-Pluto (Rev B/C/D), Pluto+ and other AD9361/AD9363 boar