DIY Sonos Project
-
Hey Self Hosted!
Got a shower thought I wanna bounce off youse guys. It's half-baked but itching to become real: DIY Sonos-like surround sound using Raspberry Pis (or maybe other SBCs if Pi's not cut out for it). Need your brains to kick things off!
The Vision:
Server Pi
- Acts as the brain. Takes 5.1 audio input from the TV (SPDIF? HDMI? Still figuring that out).
Client Pis
Wireless speakers running balenaSound or similar. Each handles a specific channel (front left, rear right, etc.). I do picture each of these being connected to a amplifier board. With some fancy wiring to give Raspberry pi voltages and power required for the amplifiers. (Something like this: https://a.co/d/fwkXuCm)
The Hurdles:
5.1 Audio Input
Can a Pi even handle 5.1 audio input? Do I need a fancy sound card/HAT? Or should I ditch the Pi for something beefier?
Channel Remapping Sorcery
Wiring all speakers the same (e.g., left channel only) but using Linux wizardry to assign which channel each speaker plays. Like, plug in a "rear right" speaker, tell the Pi "yo, you’re rear right now," and boom—it works. Possible? Or am I dreaming?
Why? Swapping speakers without rewiring = less headache. Plus, modularity.
First roadblock: Getting clean 5.1 into a Pi.
Second headache: Software channel routing.Anyone tackled something like this before? Am I reinventing a wheel that’s already on fire?
-
-
Hey Self Hosted!
Got a shower thought I wanna bounce off youse guys. It's half-baked but itching to become real: DIY Sonos-like surround sound using Raspberry Pis (or maybe other SBCs if Pi's not cut out for it). Need your brains to kick things off!
The Vision:
Server Pi
- Acts as the brain. Takes 5.1 audio input from the TV (SPDIF? HDMI? Still figuring that out).
Client Pis
Wireless speakers running balenaSound or similar. Each handles a specific channel (front left, rear right, etc.). I do picture each of these being connected to a amplifier board. With some fancy wiring to give Raspberry pi voltages and power required for the amplifiers. (Something like this: https://a.co/d/fwkXuCm)
The Hurdles:
5.1 Audio Input
Can a Pi even handle 5.1 audio input? Do I need a fancy sound card/HAT? Or should I ditch the Pi for something beefier?
Channel Remapping Sorcery
Wiring all speakers the same (e.g., left channel only) but using Linux wizardry to assign which channel each speaker plays. Like, plug in a "rear right" speaker, tell the Pi "yo, you’re rear right now," and boom—it works. Possible? Or am I dreaming?
Why? Swapping speakers without rewiring = less headache. Plus, modularity.
First roadblock: Getting clean 5.1 into a Pi.
Second headache: Software channel routing.Anyone tackled something like this before? Am I reinventing a wheel that’s already on fire?
@one_knight_scripting Don't forget about latency and keeping speakers in sync with each other and the TV. It's surprisingly hard, even on a flat, local, wired network.
I haven't tried this in a few years, but my last attempt made me appreciate the simplcity and reliability of a speaker cable.
I'm eager to hear experiences from you and from others, because it would absolutely be cool!
-
Hey Self Hosted!
Got a shower thought I wanna bounce off youse guys. It's half-baked but itching to become real: DIY Sonos-like surround sound using Raspberry Pis (or maybe other SBCs if Pi's not cut out for it). Need your brains to kick things off!
The Vision:
Server Pi
- Acts as the brain. Takes 5.1 audio input from the TV (SPDIF? HDMI? Still figuring that out).
Client Pis
Wireless speakers running balenaSound or similar. Each handles a specific channel (front left, rear right, etc.). I do picture each of these being connected to a amplifier board. With some fancy wiring to give Raspberry pi voltages and power required for the amplifiers. (Something like this: https://a.co/d/fwkXuCm)
The Hurdles:
5.1 Audio Input
Can a Pi even handle 5.1 audio input? Do I need a fancy sound card/HAT? Or should I ditch the Pi for something beefier?
Channel Remapping Sorcery
Wiring all speakers the same (e.g., left channel only) but using Linux wizardry to assign which channel each speaker plays. Like, plug in a "rear right" speaker, tell the Pi "yo, you’re rear right now," and boom—it works. Possible? Or am I dreaming?
Why? Swapping speakers without rewiring = less headache. Plus, modularity.
First roadblock: Getting clean 5.1 into a Pi.
Second headache: Software channel routing.Anyone tackled something like this before? Am I reinventing a wheel that’s already on fire?
Biggest hurdle would be timing, if you want it sound right.. Every speaker should be in sync as much as possible
-
@one_knight_scripting Don't forget about latency and keeping speakers in sync with each other and the TV. It's surprisingly hard, even on a flat, local, wired network.
I haven't tried this in a few years, but my last attempt made me appreciate the simplcity and reliability of a speaker cable.
I'm eager to hear experiences from you and from others, because it would absolutely be cool!
Well... From the very small amount that I've gathered from balenaSound, timing is mostly handled. If the software I want to write for it becomes a thing, then the Server PI will have a microphone to detect how much latency there is and adapt. That is a step way down the line though.
-
Hey Self Hosted!
Got a shower thought I wanna bounce off youse guys. It's half-baked but itching to become real: DIY Sonos-like surround sound using Raspberry Pis (or maybe other SBCs if Pi's not cut out for it). Need your brains to kick things off!
The Vision:
Server Pi
- Acts as the brain. Takes 5.1 audio input from the TV (SPDIF? HDMI? Still figuring that out).
Client Pis
Wireless speakers running balenaSound or similar. Each handles a specific channel (front left, rear right, etc.). I do picture each of these being connected to a amplifier board. With some fancy wiring to give Raspberry pi voltages and power required for the amplifiers. (Something like this: https://a.co/d/fwkXuCm)
The Hurdles:
5.1 Audio Input
Can a Pi even handle 5.1 audio input? Do I need a fancy sound card/HAT? Or should I ditch the Pi for something beefier?
Channel Remapping Sorcery
Wiring all speakers the same (e.g., left channel only) but using Linux wizardry to assign which channel each speaker plays. Like, plug in a "rear right" speaker, tell the Pi "yo, you’re rear right now," and boom—it works. Possible? Or am I dreaming?
Why? Swapping speakers without rewiring = less headache. Plus, modularity.
First roadblock: Getting clean 5.1 into a Pi.
Second headache: Software channel routing.Anyone tackled something like this before? Am I reinventing a wheel that’s already on fire?
-
Hey Self Hosted!
Got a shower thought I wanna bounce off youse guys. It's half-baked but itching to become real: DIY Sonos-like surround sound using Raspberry Pis (or maybe other SBCs if Pi's not cut out for it). Need your brains to kick things off!
The Vision:
Server Pi
- Acts as the brain. Takes 5.1 audio input from the TV (SPDIF? HDMI? Still figuring that out).
Client Pis
Wireless speakers running balenaSound or similar. Each handles a specific channel (front left, rear right, etc.). I do picture each of these being connected to a amplifier board. With some fancy wiring to give Raspberry pi voltages and power required for the amplifiers. (Something like this: https://a.co/d/fwkXuCm)
The Hurdles:
5.1 Audio Input
Can a Pi even handle 5.1 audio input? Do I need a fancy sound card/HAT? Or should I ditch the Pi for something beefier?
Channel Remapping Sorcery
Wiring all speakers the same (e.g., left channel only) but using Linux wizardry to assign which channel each speaker plays. Like, plug in a "rear right" speaker, tell the Pi "yo, you’re rear right now," and boom—it works. Possible? Or am I dreaming?
Why? Swapping speakers without rewiring = less headache. Plus, modularity.
First roadblock: Getting clean 5.1 into a Pi.
Second headache: Software channel routing.Anyone tackled something like this before? Am I reinventing a wheel that’s already on fire?
Snapcast might fit the bill, not sure about the 5.1 bit.
Does multi room sync
-
Hey Self Hosted!
Got a shower thought I wanna bounce off youse guys. It's half-baked but itching to become real: DIY Sonos-like surround sound using Raspberry Pis (or maybe other SBCs if Pi's not cut out for it). Need your brains to kick things off!
The Vision:
Server Pi
- Acts as the brain. Takes 5.1 audio input from the TV (SPDIF? HDMI? Still figuring that out).
Client Pis
Wireless speakers running balenaSound or similar. Each handles a specific channel (front left, rear right, etc.). I do picture each of these being connected to a amplifier board. With some fancy wiring to give Raspberry pi voltages and power required for the amplifiers. (Something like this: https://a.co/d/fwkXuCm)
The Hurdles:
5.1 Audio Input
Can a Pi even handle 5.1 audio input? Do I need a fancy sound card/HAT? Or should I ditch the Pi for something beefier?
Channel Remapping Sorcery
Wiring all speakers the same (e.g., left channel only) but using Linux wizardry to assign which channel each speaker plays. Like, plug in a "rear right" speaker, tell the Pi "yo, you’re rear right now," and boom—it works. Possible? Or am I dreaming?
Why? Swapping speakers without rewiring = less headache. Plus, modularity.
First roadblock: Getting clean 5.1 into a Pi.
Second headache: Software channel routing.Anyone tackled something like this before? Am I reinventing a wheel that’s already on fire?
If you don't want to worry about latency/etc - you should consider doing it with lasers
.
-
Hey Self Hosted!
Got a shower thought I wanna bounce off youse guys. It's half-baked but itching to become real: DIY Sonos-like surround sound using Raspberry Pis (or maybe other SBCs if Pi's not cut out for it). Need your brains to kick things off!
The Vision:
Server Pi
- Acts as the brain. Takes 5.1 audio input from the TV (SPDIF? HDMI? Still figuring that out).
Client Pis
Wireless speakers running balenaSound or similar. Each handles a specific channel (front left, rear right, etc.). I do picture each of these being connected to a amplifier board. With some fancy wiring to give Raspberry pi voltages and power required for the amplifiers. (Something like this: https://a.co/d/fwkXuCm)
The Hurdles:
5.1 Audio Input
Can a Pi even handle 5.1 audio input? Do I need a fancy sound card/HAT? Or should I ditch the Pi for something beefier?
Channel Remapping Sorcery
Wiring all speakers the same (e.g., left channel only) but using Linux wizardry to assign which channel each speaker plays. Like, plug in a "rear right" speaker, tell the Pi "yo, you’re rear right now," and boom—it works. Possible? Or am I dreaming?
Why? Swapping speakers without rewiring = less headache. Plus, modularity.
First roadblock: Getting clean 5.1 into a Pi.
Second headache: Software channel routing.Anyone tackled something like this before? Am I reinventing a wheel that’s already on fire?
-
If you don't want to worry about latency/etc - you should consider doing it with lasers
.
Straight up, that is awesome. I absolutely love it.
-
Straight up, that is awesome. I absolutely love it.
I don't know how he comes up with his ideas, but they are all pretty phenomenal and novel. Great channel to subscribe to for some creative fuel every once in a while!
-
Hey Self Hosted!
Got a shower thought I wanna bounce off youse guys. It's half-baked but itching to become real: DIY Sonos-like surround sound using Raspberry Pis (or maybe other SBCs if Pi's not cut out for it). Need your brains to kick things off!
The Vision:
Server Pi
- Acts as the brain. Takes 5.1 audio input from the TV (SPDIF? HDMI? Still figuring that out).
Client Pis
Wireless speakers running balenaSound or similar. Each handles a specific channel (front left, rear right, etc.). I do picture each of these being connected to a amplifier board. With some fancy wiring to give Raspberry pi voltages and power required for the amplifiers. (Something like this: https://a.co/d/fwkXuCm)
The Hurdles:
5.1 Audio Input
Can a Pi even handle 5.1 audio input? Do I need a fancy sound card/HAT? Or should I ditch the Pi for something beefier?
Channel Remapping Sorcery
Wiring all speakers the same (e.g., left channel only) but using Linux wizardry to assign which channel each speaker plays. Like, plug in a "rear right" speaker, tell the Pi "yo, you’re rear right now," and boom—it works. Possible? Or am I dreaming?
Why? Swapping speakers without rewiring = less headache. Plus, modularity.
First roadblock: Getting clean 5.1 into a Pi.
Second headache: Software channel routing.Anyone tackled something like this before? Am I reinventing a wheel that’s already on fire?
Look at https://www.picoreplayer.org/ using some sort of dac for the raspberry pi. Something like https://www.hifiberry.com/ or https://www.raspberrypi.com/news/iqaudio-is-now-raspberry-pi/ . Easy to install, works pretty flawless and with LMS server can be used as a single full home audio or play zones independently. Not sure if it can do the single speaker type syncing but you can set one left and the other right and sync them to play a single audio source. The only thing I have not done is take an input from a device like a tv as stream source.But with a pi that has bluetooth you can use bluetooth as an input and stream to all other pcp devices in your network. I use raspberry pi 4 1Gig memory with an external poe injector which simplifies powering them and gives consistent network. But 12v input from a power outlet and wifi works well enough in some spots too. It is essentially as close as you can get to plug and play squeezelite as I have found
-
Look at https://www.picoreplayer.org/ using some sort of dac for the raspberry pi. Something like https://www.hifiberry.com/ or https://www.raspberrypi.com/news/iqaudio-is-now-raspberry-pi/ . Easy to install, works pretty flawless and with LMS server can be used as a single full home audio or play zones independently. Not sure if it can do the single speaker type syncing but you can set one left and the other right and sync them to play a single audio source. The only thing I have not done is take an input from a device like a tv as stream source.But with a pi that has bluetooth you can use bluetooth as an input and stream to all other pcp devices in your network. I use raspberry pi 4 1Gig memory with an external poe injector which simplifies powering them and gives consistent network. But 12v input from a power outlet and wifi works well enough in some spots too. It is essentially as close as you can get to plug and play squeezelite as I have found
Interesting. One other option is to use OrangePi for the server. OrangePi has ARC over HDMI and that would count as an input
-