v0.7.1 — Preset sync across all visualizer instances
What's new
All your visualizer instances now show the same preset at the same time.
v0.7.0 synced Tune-panel settings (gain, tilt, etc.) but each visualizer (companion app, web /visualizer in a browser, OBS Browser Source pointed at /visualizer) was still picking its own random preset independently — three different visuals on screen at once, making the tool useless.
This release adds a new viz/preset WebSocket broadcast. Every time the companion loads a preset (auto-cycle or manual pick), it pushes the preset name to every connected client. All web instances mirror the companion's selection within one frame.
Bonus: a snapshot is sent the instant a client connects, so a freshly-opened OBS Browser Source lands on the companion's current preset immediately — no waiting for the next cycle.
How to install
- Download
tracklist-link.exebelow. - Close the currently-running companion (right-click the tray icon → Quit).
- Replace your existing
tracklist-link.exewith this one. - Launch it. Your next auto-cycle or manual preset pick should immediately propagate to any
/visualizerpage you have open.
How to verify
- Open the companion. Go to the Visualizer tab.
- In a second browser window, open your
/visualizer?token=…URL. - Optionally add it as an OBS Browser Source too.
- Click a preset in the companion. All visualizers should jump to the same preset within a frame.
- Enable auto-cycle — all instances cycle together.
Technical notes
- New
Topic::VizPreset,ServerMessage::VizPreset, andVizPresetstruct. set_viz_presetTauri command invoked from the frontend'sloadPreseteffect.- Snapshot sent in the post-Hello handshake (empty name = skip, so nothing overrides the client's initial pick before the companion has loaded anything).
- Always-on broadcast (like Heartbeat + VizSettings), no subscription needed.
- Backward compatible: clients without the topic handler silently ignore the unknown
kind.