Skip to content

v0.1.0-alpha — it plays

Pre-release
Pre-release

Choose a tag to compare

@trvny trvny released this 02 Aug 19:48
· 187 commits to main since this release

First release. A Windows bridge that streams audio over Wi-Fi to Samsung Wireless Audio Multiroom speakers, as a foobar2000 output component and as a CLI.

Everything here was measured against one physical Shape M5 (SPK-WAM550, firmware WAM550WWB-3117.1). Other models in the family are untested — if you have one, I would genuinely like to know what happens.

What works

The foobar2000 component passed its full physical checklist on 2026-08-02: a complete 213-second track start to finish at a median 1.00x with every sample between 0.9x and 1.1x, seek, pause and resume, an unattended transition into the next track, internet radio across a 44.1 to 48 kHz sample-rate switch, and a clean shutdown leaving no FFmpeg or helper process behind.

Also here: SSDP discovery, saved devices resolved by stable device ID, custom radio stations, native TuneIn presets, and a Playback → WAM Bridge menu with emergency stop, standby and raw volume steps.

Read this before installing

Audio reaches the speaker about 13 seconds after foobar plays it. Measured, not estimated. Roughly 7-8 s sits inside the speaker's own prebuffer where no host-side accounting can reach.

Playback is unaffected — the stream runs at wall-clock speed and the seekbar is honest. What suffers is control latency: pause, stop, skip and the volume slider all act on audio the speaker will not play for another thirteen seconds. A lower bitrate makes it worse rather than better; that was measured too, at 16.9 s for MP3 320k against FLAC's 13.4.

The fix is to route each control onto the speaker's own TCP 55001 command path instead of shortening the audio path. Volume already works that way on a branch; pause, stop and skip are next.

Install

Open foo_out_wam.fb2k-component with foobar2000 2.x x64, then pick Preferences → Playback → Output → Samsung M5 (Wi-Fi). FFmpeg must be on PATH. Configuration is an INI file at %LOCALAPPDATA%\WAMBridge\foobar.ini — there is no preferences page yet. See foobar/README.md and foobar/foobar.ini.example.

Alpha means alpha

One person, one speaker, no preferences UI, and a known control-latency limitation. It works and it is honest about where it does not. Failed approaches and their measurements are kept in docs/DEVELOPMENT_STATUS.md and docs/WAM_PROTOCOL.md rather than quietly deleted.

Built from 65ea962.

a27752f0d3fab5a0347e6d36e528fe5eb9aa9bde0288339eb473f9b60b0233ef  foo_out_wam.fb2k-component
1ae272df9bc3298234fb3d2bb1e021d04e7f8791b2b189df4c5ea59e53d09e51  wambridge-source.zip