mikebrady / shairport-sync

AirPlay and AirPlay 2 audio player
Other
7.3k stars 574 forks source link

Only rudimentary metadata received [iOS 9] #127

Closed andig closed 8 years ago

andig commented 9 years ago

I've compiled ssnc with metadata support and enabled metadata plus coverart. This is what I'm receicing when playing from iOS 9.1 beta/ iPad:

cat /tmp/shairport-sync-metadata

<item><type>73736e63</type><code>70666c73</code><length>0</length></item>
<item><type>73736e63</type><code>70666c73</code><length>0</length></item>
<item><type>73736e63</type><code>70666c73</code><length>0</length></item>
<item><type>73736e63</type><code>70666c73</code><length>0</length></item>
<item><type>73736e63</type><code>70666c73</code><length>0</length></item>
<item><type>73736e63</type><code>7072736d</code><length>0</length></item>
<item><type>73736e63</type><code>70666c73</code><length>0</length></item>
<item><type>73736e63</type><code>70666c73</code><length>0</length></item>
<item><type>73736e63</type><code>70666c73</code><length>0</length></item>
<item><type>73736e63</type><code>70666c73</code><length>0</length></item>

Imho that amounts to:

ssnc pfls 0
ssnc prsm 0

Nothing else- no iTunes metadata, no cover art. This is when playing various songs from any album.

UPDATE

I do suddenly get further data when using the volume buttons on the ipad!

Any idea where I'm going wrong?

mikebrady commented 9 years ago

Seems like the iPad app (is it the Music app?) is not providing any metadata. I haven't looked at what the Music app produces, TBH. The extra data from the volume control is to be expected alright.

andig commented 9 years ago

Much appreciated. Cross test shows that iOS 8.3 music app is sending metadata, iOS 9.1 beta not, neither on iPad nor on iPhone.

Would this also be the reason for not receiving prgr? I would always expect those as according to docs generated by ssnc?

mikebrady commented 9 years ago

You are right about the prgr token -- just like the PICT token, it represents repackaged metadata coming from the source. Hopefully Apple will restore the supply of metadata, but I have no foreknowledge.

primerpremio commented 9 years ago

Hi there. I recently replaced shairport by shairport-sync in my Volumio set up to keep up to date with maintenance. I use a 16x2 LCD display to show Airplay metadata which was flawlessly working until ios9. It seems Apple has changed lots of things in Airplay protocol with this new release and metadata may no longer be gathered the same way.

This is what shairport-sync-metadata-reader shows out from an ios9 playing source:

"ssnc" "snua": "AirPlay/241.33". "ssnc" "acre": "3381963373". "ssnc" "daid": "BEF7525837E46EFE". "ssnc" "pbeg": "". "ssnc" "pvol": "-20.62,-22.55,-48.10,0.00". "ssnc" "pfls": "". "ssnc" "prsm": "". "ssnc" "pfls": "". "ssnc" "prsm": "". "ssnc" "pvol": "-9.38,-7.52,-48.10,0.00". "ssnc" "pvol": "-7.50,-6.01,-48.10,0.00". "ssnc" "pvol": "-5.62,-4.51,-48.10,0.00". "ssnc" "pvol": "-3.75,-3.01,-48.10,0.00". "ssnc" "pvol": "-1.88,-1.50,-48.10,0.00". "ssnc" "pvol": "0.00,0.00,-48.10,0.00".

No title, album, artist, etc... Vol keeps working though... It would be interesting to test if an Apple TV keeps showing metadata without a software upgrade. By now, my display is empty and sad when playing through shairport-sync from ios9...

mikebrady commented 9 years ago

Hi, and thanks for the report. All the information listed above originates with Shairport Sync itself, so there's nothing at all coming in from iOS 9. It does appear to be sending picture data at least to an Apple TV, so they really seem to have changed their metadata system, which is worrying.

andig commented 9 years ago

I've read reports about display sync not working either from iOS9 to jailbroken apple tvs. Is there any raw stream of iOS9 data that we could supply for debugging purposes?

andig commented 9 years ago

Does this help: https://github.com/juhovh/shairplay/commit/498bc5bcdd305e04721f94a04b9f26a7da72673f and https://github.com/juhovh/shairplay/issues/43

mikebrady commented 9 years ago

Hi. Thanks for the link -- it's interesting, but I don't think its relevant. Shairport Sync is compatible with iOS 9 already -- which is what that patch seemed to be for -- and it doesn't seem to have anything to do with the missing metadata. I'd love to be wrong, by the way :)

dabrain34 commented 9 years ago

Did you succeed to understand what happens with the missing metadat? Is there any device combination where its working ( apple tv, airfoil etc.)?

mikebrady commented 9 years ago

No real progress. iOS9 devices are sending metadata to updated Apple TVs, so the metadata is being sent. SO, it's not so much "missing" as moving along a different pathway with different protocols. Time for a WireShark analysis, at least... Any volunteers?

dabrain34 commented 9 years ago

I will have a try with airfoil on my side, i dont have apple tv...

primerpremio commented 9 years ago

I tried tcpdump some days ago, with no luck so far. I may not be looking for the correct stuff anyway. The good news is that it seems metadata is still being sent to audio-mode devices, that's the most important thing. But well thought Apple TV announces itself as a video renderer so that may be the reason that it receives metadata from AirPlay as commented somewhere else, as it has the cappability of showing it in a display...

roblan commented 8 years ago

fixed in 9.2 :smile:

mikebrady commented 8 years ago

Yes, I can confirm that pictures are coming through again. It seems that the picture data is being sent even if you don't ask for it – see #170 – but I think it's pretty good news overall.

mikebrady commented 8 years ago

It's actually nice to see some third party apps supporting metadata – TuneIn Radio is a bit crude, but the Radio Svizzera Classica app supports it rather well, as does WunderRadio. Maybe more!

primerpremio commented 8 years ago

What a relief, my LCD display is alive again... Spotify also supports metadata perfectly, I wouldn't be interested in the whole project if not!

mikebrady commented 8 years ago

Cool. TuneIn Radio and Radio Svizzera Classica also do so! There's at least one bug that's been fixed and an update is pending. All good.

mikebrady commented 8 years ago

I'm closing this now – Apple have come to the rescue, sorta.