Comparison
Equal bandwidth and power for every scheme
Bandwidth budget
Source resolution 320×240 640×480 (about 4× slower)
Source
Input Procedural scene Image / video file Webcam Photo: Kodak 03 (caps) Photo: Kodak 05 (motorbikes) Photo: Kodak 07 (shutters) Photo: Kodak 23 (parrots)
File
Pause source (noise keeps changing)
SoftCast
Bandwidth ratio
Hadamard across chunks (64-pt)
3D-DCT over GOP of 4 frames
Power rule Equal energy per frame Equal power per symbol
Perceptual power weighting (off = MSE-optimal λ^-1/4, classic SoftCast)
Perceptual weight
Temporal filter at receiver (off = per-frame LLSE, classic SoftCast)
Temporal filter
Chunk means/variances (20×15 DCT chunks, 384 per frame), the naive mean/scale are assumed delivered reliably out-of-band and are not counted in bandwidth.
DeepJSCC
Enable (onnxruntime-web, runs asynchronously)
Model Baseline (DIV2K stills) A: + FPV/real video B: + video + synthetic patterns/text C: wide (2.9 GMAC) + video + synthetic
Latent channels m
Resolution 320×240 256×192 192×144 128×96 64×48
Encoder SNR Fixed 10 dB (one-way broadcast) Matched to channel (genie)
Interleave DeepJSCC symbols
Model files
Loading onnxruntime-web…
Encoder → K symbols → the same OFDM channel and equaliser as the other schemes → unbiased symbols + per-symbol noise variance → decoder. Trained on DIV2K stills (0–25 dB, AWGN then equalised OFDM with nulls); each frame is coded independently, with no temporal filter. Its panel updates at its own rate.
HDZero (modelled)
Enable
Reliability-based concealment (from previous frame)
Interleave HDZero symbols (the real link does not)
Resolution 320×240 288×216 256×192 224×168 192×144 160×120 128×96 96×72 64×48
720p60 mode structure at the source resolution: records of 16×8 px, 62 slots each (luma 2×22, chroma 2×9, 4:2:2), 1.94 bit/pixel (in equal-bandwidth mode the resolution and slots follow the budget), intra-only 8×8 DCT, fixed-width fields with no entropy coding, no FEC. Each block's HP bits (header, DC, low AC) ride on the signs of hierarchical 16-QAM (levels ±A, ±2A), the LP bits on outer/inner. Same OFDM channel and equaliser as the analog schemes, hard decisions. The head table and quantiser steps are our own; the real ones are not in the write-up.
Analog FM video
Enable
Standard NTSC (240 lines/field) PAL (288 lines/field)
Deviation (p-p)
Video share of RF
One field per frame: composite with sync, burst and chroma, frequency-modulated (no pre-emphasis), sampled at 4× the colour subcarrier, 14.3 MS/s NTSC or 17.7 MS/s PAL. Noise is added across that band and the receiver's IF filter is set to the Carson bandwidth (deviation p-p + 2 × video bandwidth, at most the sample rate), so more deviation also lets in more noise. Plain goggle receiver: IF filter, limiter-discriminator, video low-pass, 50 % sync slicer with H-PLL flywheel, back-porch clamp, burst-locked chroma with notch Y/C separation, PAL delay line, colour killer; vertical sync assumed locked. FM is a single carrier, so only AWGN applies here, not the OFDM impairments below.
OFDM
Subcarriers N 64 256 1024
Cyclic prefix
Interleave naive (random permutation of all of its symbol slots)
Interleave SoftCast
Naive: null-aware interpolation
Equaliser MMSE Zero-forcing
Channel knowledge Perfect CSI Pilot LS estimate (2 symbols)
Multipath
Preset Flat (1 tap) Mild (4 taps) Harsh (6 taps, 24 samples) Random
Re-roll random
Slow Rayleigh drift
Drift speed
Selective null
Slider null
Start
Width
Depth
Clear drawn nulls
Other impairments
Narrowband interferer
Interferer freq
Interferer power
Impulse / burst noise
Burst prob./sym
Burst length
Burst power
CFO (subcarriers)
Phase noise
Track common phase per OFDM symbol (ICI remains)