Closed LukeWinikates closed 5 months ago
I think I found the root cause of this in Shairport-sync mikebrady/shairport-sync/issues/1822
It's tied to changes in the remote control protocol for airplay in newer versions of iOS/macOS. I have an older mac running Monterey and play/pause works fine there.
Unfortunately in this case, we can't do anything about it. When this gets reverse engineered again and integrated into shairport, it will work again in HBOS, but we don't know if and when this will happen.
Is your feature request related to a problem? Please describe.
I primarily use my Hifiberry speakers as Airplay 2 devices via Shairport Sync. If I start playing music from an iOS device, I can't pause it from the web UI. If I press the pause button, the icon temporarily turns into a 'play' icon, then reverts to a pause icon within a few seconds. The audio never stops playing.
hifiberryos version: 20240319
Describe the solution you'd like
I would like pausing in the UI to allow pausing the the Airplay2 audio stream.
Describe alternatives you've considered
I can restart the Hifiberry device, which does cause the audio to stop. Or I can find the iOS device and pause it, but that's inconvenient.
Additional context
I read through the source code in
bang-olufsen/create
. I can see that the play/pause sends a websocket message to thenode
server. Viajournalctl
, I can see that thenode
app sends a message to the controller:Play/pause works if I use the
radio
source:The UI seems to be working properly, but either the python3
controller
is not sending the right message tompris
clients or toorg.mpris.MediaPlayer2.ShairportSync
specifically, or thempris
implementation in ShairportSync is not handling pause messages correctly. I'm happy to debug further. I'll have to dig deeper intompris
to do that effectively. Curious if thehifiberry
maintainers have thoughts about this issue.