Hailey on Nostr: Introducing Bark! Low-latency multi-receiver live-sync lossless audio streaming for ...
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/barkIt 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:
Published at
2023-08-20 02:47:38Event JSON
{
"id": "9a915c9472bf9e08d897b56296e1b3fdbf5a2d50068a7214a71e5a2d010f2f0e",
"pubkey": "ba435c386a4b42d56d225e3662979d7904c2cd907150f293d0cd8a6019121f80",
"created_at": 1692499658,
"kind": 1,
"tags": [
[
"proxy",
"https://hails.org/users/hailey/statuses/110919657595337270",
"activitypub"
]
],
"content": "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 :)\n\nhttps://github.com/haileys/bark\n\nIt 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.\n\nI'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.\n\nIt 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:\n\nhttps://hails.org/system/media_attachments/files/110/919/619/565/590/666/original/d96dadb4d370f3ea.png",
"sig": "22e1dde0bd4798fd9ba3037a586ef6a0697e1e7ac5075c11d989e193a2055b85ee94f86555cd8549d4097c8cc52e4b8cbd8883a77e970a95b5f4e1e69231987b"
}