Here's how I did it. In my setup, a docker container running on the Home Assistant machine takes Use the mpd and snapcast components. The line-out found on board most Raspberry Pi computers will suffice for smaller projects. Multi-Room Audio System: Indoor and Outdoor Audio with Snapcast and Snapcast is a multi-room client-server audio player, where all clients are time synchronized with the server to play perfectly synced audio. Multi-room audio with Snapcast and Raspberry Pi - oyvn This comes in at less than the price of a single Sonos speaker. System Overview My system is comprised of a central server running Mopidy and Snapcast (the snapserver portion) and three audio players, each running the Snapcast client ( snapclient ). Snapcast is a multiroom client-server audio player, where all clients are time synchronized with the server to play perfectly synced audio. Build a multi-room audio system with Raspberry Pi Setup of audio players/server Snapcast can be used with a number of different audio players and servers, and so it can be integrated into your favorite audio-player solution and make it synced-multiroom capable. Using raspi-config make sure youve configured wireless LAN and set a suitable hostname. Supported codecs are: The encoded chunk is sent via a TCP connection to the Snapclients. I didnt include it in the hardware list above since I didnt purchase it just for this project. conjunction with the music player daemon (MPD) or Mopidy. Well, as usual, save the file and restart Hassio, from "Settings" > "Control Server" > "Management server" > "Restart". The flow uses my Home Assistant MQTT Discovery approach to be automatically added to HASS. It's incredible. The main other point of complaint is the profusion of volume controls. Your server will run a special instance of Mopidy and the Snapcast server.