TThe Thing
Signal chain

Restore carefully. Attribute honestly.

The DSP must preserve an audit trail from RF samples to transcript. Enhancement may improve intelligibility; it must never quietly invent speech or turn uncertain attribution into fact.

RF capture passes through calibration, channel selection, FM demodulation, filtering and quality scoring, then aligns with room audio before optional restoration, transcription and summary.
Every derived stream retains the hash and version of its parent, calibration, code, and model.

Reference pipeline

  1. Ingest. Store complex IQ with sample rate, center frequency, gain settings, clock source, RF profile, and calibration ID.
  2. Protect. Detect clipping, dropped samples, source leakage, unexpected emissions, and clock discontinuity before demodulation.
  3. Select. Translate the measured response band to baseband and apply a designed low-pass/channel filter.
  4. Demodulate. For FM-like response, unwrap sample-to-sample phase difference. Do not assume FM until a calibrated injected waveform confirms it.
  5. Condition. Remove DC, resample, band-limit to the empirically useful speech band, and retain both raw and conditioned streams.
  6. Align. Estimate room/contact delay and drift from coherent wearer speech; model alignment confidence over time.
  7. Fuse. Use contact energy/coherence as wearer evidence and room diarization for other speakers.
  8. Restore. Apply a versioned model only if objective and blinded tests show improvement without unacceptable word insertion.
  9. Transcribe. Keep timestamps, model/version, language, confidence, and user corrections.

An auditable Python reference implementation is provided in dsp/thething_dsp.py. It is intentionally simple and is not a production receiver.

Wearer attribution logic

EvidenceInterpretationFailure
Strong contact energy + coherent room speechWearer likely speakingMotion shock may mimic energy; require speech-band/coherence checks
Room speech + weak/no contactAnother speaker or wearer-channel dropoutBad placement can create false “other” labels
Contact energy + weak room speechQuiet wearer speech or mechanical artifactDo not fabricate room content
NeitherSilence/noiseReader leakage can create structured false energy

The product should expose “wearer,” “other,” and “uncertain.” Two labels are not enough.

Metrics that matter

RF/channel

Response SNR, leakage headroom, spur mask, dropout rate, frequency deviation linearity, orientation/body loss, drift.

Audio

STOI/PESQ only as supporting measures; word error rate, insertion/deletion rate, level consistency, motion transient burden, blinded intelligibility.

Attribution

Wearer precision/recall, false-wearer rate during nearby speech, uncertainty calibration, dropout detection, correction rate.

Product

Time to useful transcript, manual relabeling time, missed-session rate, deletion success, support burden, comfort and retention.

AI restoration guardrails

TagMic uses a learned enhancement model and reports improved objective/perceptual quality in its evaluation; it also reports that about 20% of evaluated recovered voices were judged low quality, 45% medium, and 35% high before summarizing its broader outcomes. The correct lesson is that enhancement is valuable but raw-channel robustness still matters. Wang et al., 2025.

Export and provenance

At minimum, export WAV/FLAC streams, timestamped JSON transcript, human-readable Markdown, and a manifest containing hashes and model/calibration versions. A user should be able to leave the service with intelligible, standard files.

manifest/
  session.json
  room.flac
  wearer-demod.flac
  wearer-restored.flac
  transcript.json
  transcript.md
  sha256.txt

Software verification

The included tests synthesize a known FM signal, demodulate it, verify correlation and delay estimation, and exercise edge cases. Run them with python3 -m unittest discover -s dsp -p 'test_*.py' from the repository root.