Skip to main content

Preliminary Test: Small Local Speech-to-Text on Real HF Radio (Shortwave Broadcast and Ham SSB)

Speech-to-text models are usually measured on clean podcasts and audiobooks. HF radio is different: fading, QRM, narrow SSB passbands, net-style exchanges and low SNR. I wanted a plain answer to one question — how do small, GPU-friendly ASR models handle real KiwiSDR audio?

Preliminary test, not a final benchmark. This is a first validation pass of speech-to-text for shortwave broadcast and amateur radio use. The reference transcripts were built by cross-checking each broadcast with two Whisper models, so they may not be fully accurate. For a more rigorous check, I will record shortwave broadcasts whose content (script or transcript) is published, and run a second comparison against that known text.

Dataset

KindClipsNotes
English shortwave broadcast (SWBC)14WRMI / WINB / WWCR English segments, KiwiSDR captures
English ham SSB11VK40 net ~7065 kHz (Australian KiwiSDR), audible speech only
Total scored25Pure-noise / hallucination-only clips dropped

Audio was resampled to 16 kHz mono with soxr. No denoising was applied.

Methodology — read this first

References were built from two Whisper drafts (large-v3-turbo and large-v3): pure-noise hallucinations such as “Thank you.” and loops were rejected, the draft with the higher shared content was preferred, and only light cleanup was applied. No single model output was treated as ground truth.

Caveat: because the references came from Whisper, Whisper’s own scores are not independent. The 0.000 SW WER for Whisper large-v3 is an artifact of reference construction, not a real win. The fair comparison is among the three non-Whisper engines.

Preliminary ranking: local ~0.6–1B engines (word-weighted)

EngineAll WERAll CERSW WERSW CERSSB WERSSB CER
NVIDIA Parakeet-TDT-0.6b-v20.2290.1630.0720.0460.4430.322
NVIDIA Canary-1b-v20.2820.2200.0890.0580.5450.440
FunASR SenseVoice-Small0.3350.2600.1520.0920.5850.487

Parakeet > Canary > SenseVoice. Shortwave broadcast is easy for all three; ham SSB is where they all struggle.

WER and CER, all 25 clips
WER/CER, all 25 clips (Whisper bars are reference-contaminated)
WER and CER, shortwave broadcast
Shortwave broadcast, 14 clips
WER and CER, ham SSB
Ham SSB, 11 clips
Per-clip WER heatmap
Per-clip WER heatmap

Whisper rows (contaminated — reference only)

EngineAll WERAll CERSW WERSW CERSSB WERSSB CER
Whisper large-v3-turbo0.0860.0560.0490.0340.1350.086
Whisper large-v30.0880.0650.0000.0000.2070.154

Running it safely

Local models ran on a DGX Spark-class GPU box with a hard abort if available RAM fell below 40 GB (never tripped; minimum ~114.9 GB available). Peak CUDA allocation was ~4.8 GB (Parakeet); Canary used ~1.8–1.9 GB. Parakeet needed one process per clip to avoid a sticky CUDA illegal-address error. The 30B Nemotron transcribe model was deliberately not loaded.

Limitations

  • SSB clips come mostly from one VK40 net on ~7065 kHz.
  • Whisper-derived references bias Whisper scores.
  • References come from two-Whisper cross-checking, not a known script; they may contain errors. A second round with content-published broadcasts is planned.
  • No denoise arm; no Nemotron-3.5-Transcribe-30B.
  • English only; non-English SW was excluded.

Open data

The metrics CSV and figures will be released alongside this post so anyone can check the numbers. Next step: a second comparison using shortwave broadcasts with published content as true references, then human-verified SSB references and a denoise comparison.

73,
Ian Lee, KD8CEC

Comments

Popular posts from this blog

UV-K5 CEC HF Firmware v0.5 — Full-Band HF Receive

Historical note: this post documents an early 2024 build and is kept for reference. For current firmware, use C-Board Firmware v0.32 , and see CEC UV-K5 Firmware Source Is Now Open for the source code. ▶ Watch the HF 0.5 fullband walkthrough on YouTube → Subscribe to the KD8CEC YouTube channel for more UV-K5 HF videos. Related: UV-K5 · si4732 · HF full band  Introduction to UV-K5 HF 0.5 (Fullband receive version) This is an introduction to UV-K5 HF full-band reception firmware 0.4HF using SI4732-A10. This version is released separately from the existing UV-K5 CEC firmware version. because space is needed to store a large PATCH file to use SI4732-A10's SSB. This article only describes the features newly added in Version 0.5. Please check the links below for full features. How to modify your hardware http://www.hamskey.com/2024/02/uv-k5s-hf-full-band-reception-lsb-usb.html Version 0.3HF (Most feature descriptions are provided) http://www.hamskey....

C-Board (DSP Board) for UV-K5 — Hardware Overview (Updated June 2024)

  C-BOARD for UV-K5 I created an externally mountable DSP-Board to process digital signals from UV-K5. DSP-Board was named C-Board. C-Board is divided into versions ranging from the simplest version to one that can be equipped with GPS.

Release CEC Firmware v1.200 for uBITX All version(include V2, V3, V4, V5)

▶ Watch the full v1.200 walkthrough on YouTube → More firmware and uBITX videos on the KD8CEC YouTube channel . Related: uBITX · Firmware Release CEC Firmware v1.200 for uBITX All Version (include v2, v3, v4, v5) I did the firmware work for v5 when uBITX V5 was released, but I release it now. I received the feedback from a thankful beta tester and tested it myself by converting my uBITX v3 to v5 but I was not sure. I ordered the uBITX V5 and delivered the correct uBITX V5, so I made a little more fine-tuning. If you use V2, V3, V4, you do not need to update this firmware.