So snapcast works. it works well. The only negative appears to be that a stream has to flow through the single server, so using multiple players as a source is not looking good. An example would be syncing 2 bedrooms while the main player is serving the rest of the house. I could probably do it, but then the individual rooms would always be served through the main box, and it is only a lowly nano-pi, but it does have gigabit ethernet. hmmmm.
In the meantime this will work, one main server that can sync to any or all rooms, and the individual players can either sync to that stream or play locally.
How is is all done? well mirrors of course.
Components:
- Nano-pi neo
- Schiit modi (not a 2, so don’t touch it)
- Raspberry pi 2 model B.
- generic wifi dongle
- Sabrent USB audio dongle
- Asus router with Asuswrt-Merlin firmware
- 3TB usb hard drive
Software
IF you use an R-Pi3 for the server you can use raspbian and the install will be more straight forward. In fact O!MPD has a rasbperry pi image you can use.
There are install instructions for all the software listed on their individual sites. It turns out there isn’t anything really special that needs to be done. O!MPD using mpd, which there are setup instructions for on the snapcast github page.
The issues I ran into are power for the Raspberry Pi 2, it put noise on the power bus that was transferred to the USB audio dongle. A USB hub solved that, the other is Gentoo, installing on a Rasberry Pi is a bit of a chore, but there are instructions for that and creating a 64-bit image that runs on the Nano-pi was a bit more difficult, but I used the Gentoo instructions and the kernel from the FriendlyArm linux distro.
Why you may ask use Gentoo when the Rasbian install is so much easier, well it is simple systemd ain’t free. I can’t abide it. If you can then more power to you.