Closed polmonta closed 3 weeks ago
Thanks for the message. I'll have to take a look at this...
Haven't forgotten...
Just looking at this now. The metadata information seems to be coming in from the source alright. So, can you say exactly what you do when you "skip", please? Are you on iOS or Mac? What version of operating system and app, please?
Thanks.
...And are you using Shairport Sync in AirPlay 2 or "classic" AirPlay mode? If you could use:
$ shairport-sync -V
and post the response, it would be useful. Thanks.
So, as you probably know, MQTT is mostly driven by metadata coming in from the player. You can see this metadata using the shairport-sync-metadata-reader
app, especially with the --raw
setting.
MQTT sends a play_resume
when it receives a prsm
metadata message -- you can see the correspondence between metadata and MQTT messages in the mqtt_process_metadata
function in matt.c
.
When running in "classic" AirPlay mode, the player doesn't send anything like a prsm
, a pbeg
, so that the reason for this bug you have discovered.
As a potential workaround, track metadata is sent, so maybe you could use a change, say in the track_id
, to detect that a new track -- hence a discontinuity like a skip -- has occurred.
I understand now. Thank you for the suggestion!
Hello there,
I don't know if you are still maintaining this but thank you, this really helped me with my HomeAssistant project :).
I'm just starting in this MQTT world and mostly everything works great, but I've noticed a little bug. When I skip a song, no MQTT message is recieved (in the start_media topic nor the active_start). However, when I resume a song, the MQTT sensors for both the resume and start_media topics turn on.
This is my yaml config:
Thank you!