47 lines
1.5 KiB
Org Mode
47 lines
1.5 KiB
Org Mode
:PROPERTIES:
|
|
#+SETUPFILE: setup.org
|
|
#+keywords: homelab snapcast audio
|
|
#+subtitle:
|
|
:END:
|
|
** My multiroom audio setup
|
|
|
|
I've put my home audio solution together out of the following
|
|
components.
|
|
|
|
- [[https://github.com/badaix/snapcast][Snapcast]]
|
|
|
|
- [[https://www.musicpd.org/][MPD]]
|
|
|
|
- [[https://github.com/librespot-org/librespot][Librespot]]
|
|
|
|
- [[https://github.com/mikebrady/shairport-sync][Shairport-sync]]
|
|
|
|
- A mini-PC in my closet running the above software
|
|
|
|
- Two Raspberry Pi 4s
|
|
|
|
- Four Raspberry Pi Zero Ws
|
|
|
|
- Some desktop speakers and some Bluetooth speakers (wired to the Pis)
|
|
|
|
Each of the Raspberry Pis is in a room or porch attached to a speaker.
|
|
|
|
Snapcast lets me take an audio source and synchronize it across multiple
|
|
clients. Each of the Raspberry Pis are running a =snapclient= instance
|
|
and play whatever the =snapserver= instance tells them to.
|
|
|
|
Snapcast is setup to send whichever of the streams (MPD, Spotify,
|
|
Shairport-sync/AirPlay) is playing audio to each of the clients that are
|
|
connected to it.
|
|
|
|
This lets me or anyone else on my WiFi network play directly on one or
|
|
more of the speakers - each named for the room that they're in using
|
|
either Spotify, AirPlay, picking from my own music collection or by
|
|
pointing at a URL (like to a podcast episode).
|
|
|
|
This works out great and we've used it at home for the past year.
|
|
|
|
I'd like to get the podcast experience to a more seamless place but it's
|
|
pretty OK right now using AirMusic on my phone to play audio to the
|
|
speakers over AirPlay.
|