Skip to content

v0.1.0 — M1: Windows audio capture + FFT + WS pub/sub

Choose a tag to compare

@ALunfb ALunfb released this 23 Apr 07:20
· 38 commits to main since this release

First release of the Tracklist Link companion. Captures your default Windows audio output via WASAPI loopback, runs a 64-band real FFT + RMS/peak, and serves both over a localhost WebSocket to the Tracklist overlay.

Install

  1. Download tracklist-link.exe below.
  2. Double-click to run — a tray icon appears.
  3. Right-click tray → Copy token.
  4. Open your Tracklist dashboardOBS overlay card → Reactive analyzer — Tracklist Link companion → paste token → Save & test.

The peak meter lights up as soon as audio plays on your PC. Set Analyzer to `bars` or `wave` and the overlay pulses with real spectrum data.

What works

  • Windows 10/11 WASAPI loopback capture (any default output device)
  • 48 kHz, f32 samples verified
  • 64-band log-spaced FFT @ ~50 Hz
  • RMS + peak level stream
  • Token + origin + host header auth (per-install secret, constant-time compared)
  • Localhost-only bind, never accepts remote connections
  • System tray: Copy token / Open config / Regenerate token / Quit

What's next

See ROADMAP.md.

  • M1.1 — one-click pairing (skip the token copy-paste)
  • M2 — Butterchurn (MilkDrop 2) overlay preset gallery driven by this FFT feed
  • M3 — ProjectM / MilkDrop 3 window that OBS captures as a Window Source
  • M4 — CS2 GSI + Dota 2 + Apex game-state events, same pub/sub pattern
  • M5 — onset / beat / BPM detection
  • M6 — cross-platform (macOS CoreAudio, Linux PulseAudio/PipeWire)

Security

See SECURITY.md for the full threat model.

Short version:

  • Binds `127.0.0.1` only
  • Origin allowlist (`https://music.blackpearl.gg\`, localhost dev)
  • Per-install 32-byte secret, constant-time compared
  • No outbound network (update checks deliberately deferred)
  • Mic/camera/screen never accessed
  • MIT-licensed, reproducible builds welcome

Verify the binary

# From source at the tagged commit:
git clone https://github.com/ALunfb/tracklist-link.git
cd tracklist-link
git checkout v0.1.0
cargo build --release
# Compare hashes with the attached binary:
sha256sum target/release/tracklist-link.exe

If your hash doesn't match the release asset, please open an issue.