I’m interested in learning more details on how Sonos’ low-latency streaming works.
Right now, if one would want to get audio out from their, let’s say laptop, options are:
- AirPlay 2 - strict 2 second delay
- TuneIn Radio local stream (UPnP?) - 1-3 second delay
- Use Sonos Roam or Move connected via bluetooth
- Use Sonos Playbar, Playbase, Ray, Beam, Arc, Amp digital audio input
The last two is what I would like to do, but instead of requiring special hardware, I would like to have the software component. Perhaps register my laptop as a virtual Sonos device, and stream audio from my laptop with the same protocol, which should be less that 75ms.
I assume Sonos company would prefer to sell a device instead of giving away software for free, and also does not want to support running the streaming software on unknown hardware and dealing with random issues that could occur there.
That’s why I would love to have at least some pointers how to do it technically myself. Is this completely proprietary? Is this restricted behind encryption keys? Would releasing software that just allows streaming to Sonos speakers (or act as the host) violate Sonos patents?
FYI: I only care about using the central Wi-Fi router based network, not the SonosNet.
When Sonos speaker has audio input (either wired or bluetooth) and streams it to other speakers:
- What is it doing as a host? Is it responsible for time syncing with other speakers?
- If my laptop does not need to play the audio itself, does that make things easier? (otherwise my laptop needs to play in sync with all sonos speakers)
- How does it send audio to other speakers?
- Is it multicasting through wifi? Is it really only using wifi or still creates SonosNet?