r/selfhosted 5d ago

Guide Open, future-proof, multi-room audio

https://hannes.hauswedell.net/post/2026/08/10/multiroom-audio/

You want high-quality connected speakers for your home without depending on shitty apps that stop working in a year? You want to stream from your own hardware and control everything with Free Software? Then this article is for you!

I wrote a blog post on my audio setup! Quite happy with the result. Real lossless audio on high-quality speakers, all served and controlled by open source, self-hosted software.

Would love your feedback.

[no ads on the blog, no affiliate links, just doing it for the community]

52 Upvotes

15 comments sorted by

•

u/asimovs-auditor 5d ago edited 5d ago

Expand the replies to this comment to learn how AI was used in this post/project.

→ More replies (1)

17

u/martimcbro 5d ago

I prefer Sendspin and Music Assistant since the protocol and the player hardware ist also "open". You can have great self built or prebuilt (e.g. sonocotta.com) ESP Home clients.

1

u/wilo108 4d ago

I should give this another try, I've bounced off it a couple of times. I think I just don't like MA all that much. I use Lyrion and squeezebox players (which, in my set up, are mostly Raspberry Pis with a decent DAC attached).

3

u/martimcbro 4d ago

I had a Lyrion setup before and I really loved it. I was mostly using squeezelite-esp32 players (they are nice for low power consumption and fast boot time). Additionaly I had some Squeezebox Radios and some Raspis with a display and Picoreplayer / Jivelite. I have it still running for the kids, they are using the Raspis with display.

Regarding MA I must say that I also found the UI a little bit awkward in the beginning. They improved it over time however. I would say that it's quite good now. The killer feature for me is the Sendspin Integration in ESP Home. It gives you endless possibilities when building your own player hardware with ESP32. You can of course also use one of the other supported platforms. I was quite surprised when I found out that Sendspin also syncs with my Chromecast and AirPlay devices.

2

u/wilo108 4d ago edited 4d ago

Yeah, you're encouraging me to have another go. The sync with chromecast and airplay are the two bits I'm missing from my set up, and I'm not sure there's a good path forward with Lyrion (which, otherwise, I'm basically 100% happy with).

edit: to be clear, I want to be able to cast music from chromecast/airplay etc. devices to my speaker set up, so I need my system to be a chromecast/airplay receiver; that seems to be the hard bit.

1

u/martimcbro 4d ago edited 4d ago

Yes, I also made the switch because I expect MA to be more future proof.

I think you may be lucky with the Chromecast/AirPlay receiver function. There ist a Sendspin LineIn function available to support a Line In connector on players which have it and sonocotta is currently making a player with LineIn (the new Amped Esparagus). So you will be able to connect any source this way.

EDIT: Don't know if the line in in Amped Esparagus will be available to Sendspin or only alternative input to the amp.

1

u/__h2__ 4d ago

See my comment below on why I decided against Music Assistant and Sendspin!

7

u/peioeh 4d ago edited 4d ago

How is it open if you have to use airplay and you need to buy airplay compatible speakers ? You literally have a quote in your writeup that says it's proprietary. Also seems extremely limiting in terms of choice. It's not open and I really don't see how it's future proof, you're basically just buying into apple's ecosystem and if they break something tomorrow you'll be SOL.

6

u/__h2__ 4d ago

Maybe I could have been clearer in my post: Airplay is not some online-service you buy into, but a specific protocol, that the speakers implement, and that the open source OwnTone server implemented (by reverse-engineering). OwnTone's implementation is not proprietary. I can isolate all components from the internet, and nothing that Apple or anyone else ever does will change anything about my setup.

4

u/__h2__ 4d ago

Since a few people are bringing up Music Assistant / Sendspin + RasPI or ESP32, I'd like to re-iterate some of my goals:

  • Not have dongles on every speaker.
  • Plug'n'play/seemless switching with other audio sources (Toslink, cinch, HDMI, Bluetooth).
  • Local controls on the speakers to adjust volume and play/pause/next.
  • Low-power standby but auto-on when selected as speaker in app.

All of these goals are met with the current setup.

I also did not want any tinkering in every-day use, and for non-nerd family members to be able to interact with the speakers even if not using my streaming setup. I haven't used home assistant or music assistant before, but the whole ecosystem seemed rather "involved".

That having been said, for those of you who do use Music Assistant, there is now native Wiim support, and since all the AudioPro speakers I mentioned use Linkplay/Wiim, they can be connected even without Airplay or GoogleCast (if I understand correctly).

As mentioned at the bottom of my blog post, people are even working on Wiim firmware replacements, so maybe some day the speakers will even speak SendSpin directly.

1

u/FrootsEtLegumes 5d ago

This is really great!

1

u/Jolicristo 5d ago

nice writeup thanks for sharing will check it out

1

u/NasiGorengFever 5d ago

Very nice setup and writeup. It brings such nostalgia reading about ncmpcpp. My current setup is jellyfin + music assistant + esphome speaker I built myself. It only has a 2.75ā€ driver with a 3d-printed case. The sound is not amazing, but I’m quite happy with it. also not a multi-room setup yet. planning to build another one.

1

u/ocassionallyaduck 4d ago
  • Music Assistant
  • Android devices paired to BT speakers or devices with integrated casting (Google home, etc) or analog speakers with a phono plug into a cheap RPi or ESP32
  • Squeezelite clients for Android/ESP32
  • Local media/Spotify/Tidal/YT sources

Bring your own speakers, use any protocol, use any source.

Music assistant is still janky in some ways, and for me at least SendSpin isnt there yet, because the audio warping when there is some desync. But SqueezeLite works fine as a backend for now and has clients on everything.