Comment by o-__-o
6 years ago
The latency of your suggestion is making me cringe. Mpd if you desire a sonos-like synchronized low-lag experience. Streaming direct to pulseaudio is also an option, but requires bandwidth (uncompressed audio)
6 years ago
The latency of your suggestion is making me cringe. Mpd if you desire a sonos-like synchronized low-lag experience. Streaming direct to pulseaudio is also an option, but requires bandwidth (uncompressed audio)
What latency are you referring to? Latency between the source and the sound from the speaker? For me is this only a problem for the audio that goes with video. For pure music I don't mind. But in the video case I switch to pulseaudio directly but obviously lose the multispeaker setup.
Your setup streamed to two different rooms will have two distinct delays of the source audio. Probably fine for most use cases, but drives me nuts and why consumers head to sonos.
Pulseaudio can stream to multiple speakers and audio devices simultaneously. Switching to JACKd instead of gstreamer for the pulseaudio backend allows for a much more powerful audio processing subsystem (at the expense of resources since jackd likes a real-time kernel). Using mpd allows for a lightweight low latency server/client to stream audio to remote destinations. It’s not quite plug and play (DLNA doesn’t care about synchronization) but dropping mpd onto a raspberry pi is the simple fix (and simulates the hardware inside of a sonos speaker)
I’m sorry I’m on mobile or i would make a diagram showing this in detail. I’ve been thinking of what an open source Sonos clone would look like for a long time. Maybe it’s time to open up that git repo to the public
The setup is: the dlna renderer sends it's output to the snapcast server pipe. The snapcast server streams the audio to snapcast clients via a time synced protocol.
The latency you think I have is not there.