Had a co-worker turn me on to the Chromecast Audio. Retails for $35, dropped to $25 on Black Friday.
As sold, they are highly useful to cast Google Play/Spotify/I Heart Radio to your speakers.
Recent updates have added Zones where you can group multiple Chromecast Audios to have synced playback. Outputs are 1/8 analog and MiniToslink.
Streaming from Google Play is 320MP3 if the source is lossless, and I was thinking. Can I do better?
Did a bit of poking around and found out how to cast from Foobar2000. The glue between Foobar and the Chromecast is BubbleUPnP server. (https://archive.org/details/acb2016-11-28
). Note: During installation it will check for Java on your computer, if it's not there it says it will download and launch the Java installer. It fails at this. Instead, a manual download and install of the Java Runtime Environment may be needed. (https://www.java.com/en/download/
After installation, run the configuration and go to the Media Renderers tab. Each Chromecast Audio and each Group's name will appear on the left. On the right check the Create a DLNA renderer for each unit/group you want to be able to cast to.
Next download the foo_out_upnp component (http://www.foobar2000.org/getcomponent/fb6fd9e7273f51c855e794a7ad53a794/9c6b41c3fc76ed991bc987c385a93b46/UPnP-Output.fb2k-component
Then in Foobar go File/Preferences select Components then install the upnp component with Foobar's install command.
Then in preferences, select output and from the dropdown pick the device/group you wish to cast to.
Lossless/Gapless PCM connection to your speakers anywhere in the house via wifi.