Close

OFFgrid-SDR 2.1: DAB, DAB+ and xHE-AAC DRM, all in the browser

A project log for OFFgrid-SDR

RTL-SDR sticks need some love, This self-contained web page receiver does just that

diddydiddy • 11/02/2026 at 18:18•0 Comments

Version 2.1 is out, and it’s the biggest update yet. OFFgrid-SDR now plays DAB and DAB+ digital radio and DRM in xHE-AAC, still from a single HTML file, with no installation and no internet connection needed once it’s downloaded.

I’ll be honest: these two features were a lot of work, far more than anything before.

DAB and DAB+, from scratch

There’s no DAB library you can drop into a web page, so the whole receiver is written from the DAB standard itself, in JavaScript running in a background worker:

Then came the debugging. Real broadcasts found bugs that test signals never would: an 8-bit overflow that had me decoding a slice of Radio 2 while calling it Radio 1 Dance; a frequency correction quietly doubling the error instead of removing it; and a setting in FAAD2’s DRM support that threw away half of every real DAB+ station’s audio frames. I fixed that last one with a small, documented patch to FAAD2.

Tested off air on BBC National DAB (12B) with an ordinary RTL-SDR stick, on both a DAB+ station and an MP2 one. Tune anywhere in a multiplex with AUTO on, and it finds the channel, switches to DAB and lists the stations. Click one to listen, or let it start one for you. The box shows each station’s format, bit rate and channels, plus the signal in dB, and if the sound can’t be played, it tells you why.

xHE-AAC for DRM

More and more DRM broadcasters are moving to xHE-AAC, the newer, more efficient codec. OFFgrid-SDR now plays it using libxaac, the decoder inside Android, compiled to WebAssembly. Getting there meant translating DRM’s compact codec description into the standard form libxaac expects, building a stand-in for a C library feature WebAssembly lacks, and checking the result against a real broadcast recording: it matches Fraunhofer’s own decoder almost sample for sample, stereo included.

Try it without a stick

The demo mode now includes a real DAB multiplex (“OFFgrid DAB” on 12A, with a DAB+ and an MP2 station) and two DRM stations, one in AAC and one in xHE-AAC. These aren’t recordings: they’re genuine signals built from the standards, decoded by the same receivers that handle off-air signals. So the demo is a real test that everything works, and a way to try OFFgrid-SDR before buying any hardware.

Free and open

OFFgrid-SDR is free software under the GPL. Every decoder built in has its exact source and build script in the repository, and each one rebuilds byte-for-byte.

👉 Download it from GitHub: https://github.com/diddy-boy/OFFgrid-SDR

As always, feedback and reception reports are very welcome. I’d especially love to hear from anyone with DRM xHE-AAC stations in range, since I can’t receive any from the UK. 73!

Discussions