Go-based FM stereo transmitter with RDS, Windows-first and cross-platform
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Jan Svabenik dc32142cf2 feat: expose dry-run summary via control api 1 kuukausi sitten
..
NOTES.md docs: bootstrap fm rds transmitter project plan 1 kuukausi sitten
README.md feat: expose dry-run summary via control api 1 kuukausi sitten
config.sample.json feat: integrate cli config and control scaffolding 1 kuukausi sitten

README.md

fm-rds-tx docs

Build & Test

Root CLI

  • go test ./...
  • go run ./cmd/fmrtx -print-config
  • go run ./cmd/fmrtx -config docs/config.sample.json
  • go run ./cmd/fmrtx --dry-run --dry-output build/dryrun/frame.json
  • go run ./cmd/offline -duration 500ms -output build/offline/composite.iqf32

Internal DSP module

  • cd internal
  • go test ./...

Examples module

  • cd examples
  • go test ./...
  • go run ./soapy_simulated

Dry run

The dry-run mode generates a synthetic, hardware-free frame summary based on the current config. It is intended as a no-hardware smoke path for the CLI and config/control-adjacent logic.

The HTTP control plane also exposes GET /dry-run for quick inspection of the currently effective no-hardware summary.

Offline generation

cmd/offline generates a deterministic no-hardware IQ/composite-style file using the repository's output backend path. This is still an MVP path, but it is a more realistic offline artifact than the JSON-only dry-run.