Introducing Bark! Low-latency multi-receiver live-sync lossless audio streaming for local networks. It's like Sonos, but open source, so nobody can brick your devices remotely. It's also written in Rust :)

https://github.com/haileys/bark

It sends 48khz uncompressed float32 data over UDP multicast. It can achieve playback sync to within hundreds of microseconds in ideal conditions, and usually to within a millisecond.

I've been working on it in my spare time over the past week, and I'm pretty happy with how it's shaped up. I have three receivers setup and it works remarkably well at keeping everything in sync as I walk around my house. For now it only really works on Linux, and supports Pipewire (and Pulse in theory), but there's no huge impediment to making it truly cross-platform.

It also features a fancy live stats subcommand, which can used on any computer in the same multicast domain to watch the status of the stream cluster:

GitHub - haileys/bark: live sync audio streaming for local networks

live sync audio streaming for local networks. Contribute to haileys/bark development by creating an account on GitHub.

GitHub
@hailey that’s super neat. I really wish there was better AES67 & PTP support in Linux, because all this stuff done closed-source in a pro audio could come across to open source and consumer network stuff so easily. One day I’ll have time to work on it.
@s0 I borrowed some ideas from PTP in this at least!! :)
@hailey nice :) I use MoOde Audio on a raspberry pi at home for a web interface to play back audio on my Hifi, this seems like something that would be great to add into that project for multi-zone audio, instead of relying on reverse-engineerings of airplay and Sonos protocols with so many layers of subtle bugs and compatibility problems…