Ubuntu – Multi-Room / Multi-Zone DIY Audio Setup

sound

I have been searching around and trying to figure out the best way to create a multi-room multi-zoned setup on the relatively inexpensive side. This rules out a Sonos or Squeezebox based solution as they are both too expensive to implement.

Currently I am looking at using an alix3d3 Found Here board as it supports POE and has an stereo audio output removing the need for at least one power plug at the output source.

Ideally what I would like to be able to accomplish with this system is have 3 zones run by a board a piece pulling my music from my linux server. With these 3 zones I would like to be able to either play a different song in each zone or have a single song synced among the zones akin to Sonos.

I have played with MPD (music player daemon) which installs easily using the voyager-mpd linux install and works well for a single output at a time, but not multiple zones as far as I can tell.

Has anyone been able to accomplish something like this and are there instructions for diy?

Best Answer

I have made best experiences by setting up a network distributed audio solution based on both Icecast2, and uShare (for uPnP/DLNA streaming).

Any receiver connected to your LAN (either by cable or by WiFi) will then be able to acess audio from your server in the following way:

  • Stream a playlist: Combine icecast2 Install icecast2 with ices2 Install ices2(for ogg)

    or Ices (for mp3)

  • Broadcast the sound of your local soundcard: Combine Icecast2 with darkice Install darkice

  • Make your library accessible: Run ushare Install ushare for UPnP file shares

When Icecast2 is broadcasting audio any device capable of receiving Internet radio streams in Shoutcast format will be able to tune in. This can be an old PC, a mobile phone, or a special Internet Radio device, just to name some examples. The devices do not need to be compatible to each other.

A short tutorial on how to set up Icecast2 can be found here. Some notes on ushare are found in this answer.

Icecast is able to stream more than one stream at a time. Therefore you will be able to select different broadcasts on different locations.


Related Question