Help us solving the AirPlay issue when using iOS7 devices

  Thread Rating:
  • 6 Votes - 4.33 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
Memphiz Offline
Team-XBMC Developer
Posts: 10,649
Joined: Feb 2011
Reputation: 112
Location: germany
Post: #76
Please someone post a screenshot of bonjourbrowser from airserver and i will do a build with exactly the same announcement. I am not willing to give those commercial **** money for hiding information that hey might even have stolen from XBMC in the first place (assumption intended ...).

AppleTV2/iPhone/iPod: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for XBMC: Wiki NFS
HowTo configure avahi (zeroconf): Wiki Avahi
READ THE IOS FAQ!: iOS FAQ
find quote
pette Offline
Junior Member
Posts: 37
Joined: Dec 2013
Reputation: 0
Post: #77
Perhaps the airtunes (raop) announcement should also be mimiced as well, and not only airplay.

Bonjour browser for windows sucked, no way to export the options in a clean way. But if I find a good way to export / screenshot it I will post it later today..

AirServer is free for trial otherwise Memphiz, then you can use bonjour browser for windows (free).
find quote
Axuttaja Offline
Junior Member
Posts: 34
Joined: Jan 2014
Reputation: 0
Post: #78
These are old screenshots for version 4 I COULD NOT MAKE THE NEW AIRSERVER 5 WORK AFTER USING THE V4(!)


AirTunes for v4 edit: (it creates 2 different receivers other is lossless...)
https://drive.google.com/file/d/0B7exJ8d...sp=sharing

AirPlay for v4
https://drive.google.com/file/d/0B7exJ8d...sp=sharing
(This post was last modified: 2014-01-08 15:38 by Axuttaja.)
find quote
Memphiz Offline
Team-XBMC Developer
Posts: 10,649
Joined: Feb 2011
Reputation: 112
Location: germany
Post: #79
I won't register there - sorry this is some open source principal thingy. And of course i am talking about both - airtunes and airplay - sry for beeing unprecise. In that case a screenshot of bonjourbrowser would be enough for me to mimic the same announcement.

AppleTV2/iPhone/iPod: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for XBMC: Wiki NFS
HowTo configure avahi (zeroconf): Wiki Avahi
READ THE IOS FAQ!: iOS FAQ
find quote
Memphiz Offline
Team-XBMC Developer
Posts: 10,649
Joined: Feb 2011
Reputation: 112
Location: germany
Post: #80
Ok based on the screenshots from Axuttaja i see one of the major differences.

Bascially they do 2 similar airtunes announcements (announcing airtunes on 2 different ports aswell).

1. Airtunes announcing support for RSA encryption and supported codecs PCM, Apple Lossless (ALAC) - (same like XBMC does) - i think this is for compatibility with older devices with ios < version 7
2. Airtunes announcing support for FairPlay, FairPlay SAPv2.5 and supported codecs PCM, Apple Lossless (ALAC), AAC, AAC ELD (Enhanced Low Delay)

The mac of the 2. announcement fits the one from the airplay announcement. So what i fear is - that the second airtunes announcement is the key to successfull detection of a valid airplay target for ios7 devices. Unfortunatly even if this announcement would work - no playback would be possible after that because the ios device would then try to connect to us using FairPlay encryption which is not available in xbmc nor in any other open source solution.

I can try to cook up a build which does the second announcement but added RSA encryption support in the hope that the ios7 client can fallback if fairplay encryption fails - but i don't think this will work.

AppleTV2/iPhone/iPod: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for XBMC: Wiki NFS
HowTo configure avahi (zeroconf): Wiki Avahi
READ THE IOS FAQ!: iOS FAQ
find quote
pette Offline
Junior Member
Posts: 37
Joined: Dec 2013
Reputation: 0
Post: #81
That was AirServer 4, is that really IOS7 compatible?
find quote
Memphiz Offline
Team-XBMC Developer
Posts: 10,649
Joined: Feb 2011
Reputation: 112
Location: germany
Post: #82
Can someone check to which of those 2 airtunes ports 49152 or 49153 the ios7 client connects when trying to stream a video? (wireshark action required again).

AppleTV2/iPhone/iPod: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for XBMC: Wiki NFS
HowTo configure avahi (zeroconf): Wiki Avahi
READ THE IOS FAQ!: iOS FAQ
find quote
PaulCarter Offline
Junior Member
Posts: 31
Joined: Jul 2011
Reputation: 0
Post: #83
(2014-01-08 15:48)Memphiz Wrote:  So what i fear is - that the second airtunes announcement is the key to successfull detection of a valid airplay target for ios7 devices. Unfortunatly even if this announcement would work - no playback would be possible after that because the ios device would then try to connect to us using FairPlay encryption which is not available in xbmc nor in any other open source solution.

I can try to cook up a build which does the second announcement but added RSA encryption support in the hope that the ios7 client can fallback if fairplay encryption fails - but i don't think this will work.
Thanks - even if it doesn't work it will give us some confidence that this second announcement is the what is causing xbmc to not appear (consistently) as an airplay target.
That would though imply that it is not possible to airplay from an iOS7 device to an old AppleTV - has that been confirmed?

I hope to get a chance tonight to have a look at why Ubuntu builds aren't working at all
find quote
Axuttaja Offline
Junior Member
Posts: 34
Joined: Jan 2014
Reputation: 0
Post: #84
Yeah.
It bossily won't, the second AirTunes announcement is for lossless audio support (additional audio receiver) and the other is tied to the airplay announcement.
The second announcement can be turned off from settings..

I believe that since iOS "ties" AirTunes and AirPlay announcements together the randomness of icons is because The AirTunes announcement is fine but the AirPlay announcement is funky and iOS only recognizes Airplay support randomly.
on testbuilds 1, 2, 4 I'm able to "fix" AirPlay by turning the feature off/ON from settings.
So the question is what is the second announcement doing differently in the code?


Having a look at Wireshark i can't replicate @pettes issue of repeating zeroconf/Bonjour Announcement
find quote
Memphiz Offline
Team-XBMC Developer
Posts: 10,649
Joined: Feb 2011
Reputation: 112
Location: germany
Post: #85
PaulCarter move on to the development forum with your problem ... but an output of your configure would state if airplay and airtunes support are properly found (indicated by printouts at the end of configure). Also you need the dependency libs libshairplay and libplist for proper building with airplay support (the letter should be available in ubuntu - libshairplay might be available from our xbmc ppa - google).

I don't want to handle your problem in this thread as it clutters it and also is a bit offtopic to what we are on about here. Please understand that.

AppleTV2/iPhone/iPod: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for XBMC: Wiki NFS
HowTo configure avahi (zeroconf): Wiki Avahi
READ THE IOS FAQ!: iOS FAQ
(This post was last modified: 2014-01-08 16:05 by Memphiz.)
find quote
pette Offline
Junior Member
Posts: 37
Joined: Dec 2013
Reputation: 0
Post: #86
(2014-01-08 16:03)Axuttaja Wrote:  Having a look at Wireshark i can't replicate @pettes issue of repeating zeroconf/Bonjour Announcement

What I saw was that XBMC did not repeate the announcement after 5mins, while AirServer repeated the announcement. Is that what you cannot replicate?
find quote
Memphiz Offline
Team-XBMC Developer
Posts: 10,649
Joined: Feb 2011
Reputation: 112
Location: germany
Post: #87
@Axuttaja so you can switch off the second airtunes announcement? (the weak one with only rsa decryption - judged from et = 0,1) and it still works with ios7 i guess?

AppleTV2/iPhone/iPod: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for XBMC: Wiki NFS
HowTo configure avahi (zeroconf): Wiki Avahi
READ THE IOS FAQ!: iOS FAQ
find quote
Axuttaja Offline
Junior Member
Posts: 34
Joined: Jan 2014
Reputation: 0
Post: #88
(2014-01-08 15:57)pette Wrote:  That was AirServer 4, is that really IOS7 compatible?

AirServer 4 IS NOT iOS 7 Compatible i have it installed because i wanted to test if iOS 7 breaks backward compatibility and it did...
Now i can't get it back Rolleyes

(2014-01-08 16:07)pette Wrote:  
(2014-01-08 16:03)Axuttaja Wrote:  Having a look at Wireshark i can't replicate @pettes issue of repeating zeroconf/Bonjour Announcement

What I saw was that XBMC did not repeate the announcement after 5mins, while AirServer repeated the announcement. Is that what you cannot replicate?

Sorry i understood your post wrong, I haven't had a look at that.

(2014-01-08 16:07)Memphiz Wrote:  @Axuttaja so you can switch off the second airtunes announcement? (the weak one with only rsa decryption - judged from et = 0,1) and it still works with ios7 i guess?

You can switch it off but the old version won't start magically work with iOS 7. I don't have access to the current iOS 7 compatible version right now.
(This post was last modified: 2014-01-08 16:54 by Axuttaja.)
find quote
pette Offline
Junior Member
Posts: 37
Joined: Dec 2013
Reputation: 0
Post: #89
Since there was no way of taking a screenshot (parameters were in a small scrolled box)....

Bonjour service: _airplay_tcp.(HTPC)
vv = 1
model = AppleTV3,2
deviceid = 31:85:A9:3F:B5Big GrinD
srcvers=150.33
rhd = 1.9.4
features = 0x100029ff

Bonjour service: _raop_tcp.(3185A93FB5DD)
txtvers=1
vs=150,33
am=AppleTV3,2
sv=false
md=0,1,2
ch=2
sf=0x4
vv=1
pw=false
rhd=1.9.4
cn=1,3
sr=44100
vn=65537
da=true
et=0,3,5
tp=UDP
ss=16


The Bonjour service: _raop_tcp.(3185A93FB5DD) is reported twice in bonjour browser. Same content/parameters (checked twice).

This is the latest airserver version.

A note to this is that the real MAC address is 30-85-A9-3F-B5-DD.
find quote
Axuttaja Offline
Junior Member
Posts: 34
Joined: Jan 2014
Reputation: 0
Post: #90
That mac address thing is really interesting, is there a way to replicate that on XBMC?
(This post was last modified: 2014-01-08 18:03 by Axuttaja.)
find quote
Post Reply