Hello!
Im looking into developing a home mobile app where each mobile device would be able to stream audio to different speakers around the house. Ideally each device would connect to a single shairport server, but I am not sure how to redirect the output to different speakers. Assuming that I store in some sort of database the speaker (or group of speakers) that each device intends to use, how would I go about telling shairport "this goes there"? or do you perhaps see a better alternative?
If I remember correctly: try looking through the issues and you'll find some people what have had the same desire. They solved it in various ways. E.g. by running multiple copies of Shairport and creating ALSA config files that create different endpoints for each instance.
there is a balena project that does something similar. you can airplay to it and it will send to multiple targets (or bluetooth, or spotify) looks like they are achieving it through pipe outputs and snapcast servers/clients.
My understanding is they are looking into a similarly "dynamic" speaker target relay. not sure if its active in the development list.
Hello,
Is it possible to “publish” several active aliases for the device name?
If the alias call can be identified, it would enable an interesting integration with multi-room amplifiers.
E.g. zone names.
@mikebrady With AirPlay 2 being a struggle and potentially full of growing pains for shairport-sync anyways, is there any possibility that you've thought about having shairport-sync take over the multi-room relaying?
Such as: use PTP between shairport-sync instances and have each instance be capable of audio send/receive to other instances in a sort of 'orchestrator' topology. That way we could stay on AirPlay 1 and still get multi-room sync. The instance could even support alias names as the "UI" in the "Speakers & TVs" box in iOS.
That's a nice idea alright, and I think it could be done. Let me think about it a bit.
Most helpful comment
If I remember correctly: try looking through the issues and you'll find some people what have had the same desire. They solved it in various ways. E.g. by running multiple copies of Shairport and creating ALSA config files that create different endpoints for each instance.