XBMC AirPlay broadcast method
#1
Hi,

Crystalbuntu used to use its own AirPlay and AirTunes implementation but naturally I am changing to include the native one. I have two questions:

1. Why are you making AirPlay and AirTunes separate devices? They can be one device and the user can easily choose whether to broadcast just audio (by locking the iDevice, double tapping home and streaming this way) or streaming the video by doing it from an unlocked iOS. There is no need for two device names.
2. Why is the format: DeviceName (Hostname) @ HostName. Hostname is being mentioned twice?
Reply
#2
In ther latest nightly you can configure the announced name in the settings. The first point i just didn't understand (non native english speaker ...).
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply
#3
Yes you can configure the name but that is still based on hostname.

More importantly, why do they show as two separate devices? There is no need to do this - one is a speaker icon, one a TV icon.
Reply
#4
Sam.Nazarko Wrote:Yes you can configure the name but that is still based on hostname.

More importantly, why do they show as two separate devices? There is no need to do this - one is a speaker icon, one a TV icon.

What do you mean by "there is no need to do it"? Patches are welcome. AirPlay (video only) server and airtunes (audio only) server are 2 seperated things in XBMC (though they are enabled by only one option which is called "airplay" - analog to what apple does).

We base on open source projects there which are 2 different things. If you have any information on howto announce these 2 servers as one single instance - feel free to say a word ...

For the announcment. We announce as <customname>@hostname for distinguish between xbmc and the native airplay of ATV2 for example. When running XBMC on ATV2 the native AirPlay is already announced as Hostname only which would interfere with XBMCs implementation then.

What program do you use for seeing both server announcments at the same time? (e.x. my ipad only shows one xbmc instance in youtube (the video instance) and on itunes app it shows only one instance as well (the speakers - which is the airtunes instance).
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply
#5
I know you use two different implementations: libshairport and libplist. When I used AirPlayer and Shairport although they are two separate devices they showed as one at a time only. Either the speaker or TV icon. Testing the XBMC implementation I saw both the TV icon and the Speaker icon at same time from iPod.app playing music
Reply
#6
As i said ... if you know how to do it ... don't hold back Smile
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply
#7
You are not understanding me.

How and why is it exposed as two separate entities? Should be encapsulated under one entity in iOS
Reply
#8
Its announcing 2 services via zeroconf. One is with protocol "_airplay._tcp" for videos ... and the other is with protocol "_raop._tcp" for audio.

Yeah it seems i don't understand you ... for me it sounds like you know how to do it in one announcment for both services but you don't tell me how?

beside that ... i have started xbmc on my mac and started iPod.app on my ipad ... and it only sees the speaker ... even my real appletv2 is only seen as speaker here ... i'm not quite sure whe ipod.app even should pickup the airplay.tcp announcment ... as ipod.app is only able to play music right?

What happens if you try to stream to the tv symbol of xbmc with ipod.app?
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply
#9
I do not have a method to advertise AP and AT via one Avahi service, but I am saying they both show at once even though they do not when I used my own implementations. Got this bug on an iPad and iPhone, but will assume this is isolated. Streaming to TV from iPod.app results in iDevice thinking it's streaming when it is not
Reply
#10
Sam.Nazarko Wrote:I do not have a method to advertise AP and AT via one Avahi service, but I am saying they both show at once even though they do not when I used my own implementations. Got this bug on an iPad and iPhone, but will assume this is isolated. Streaming to TV from iPod.app results in iDevice thinking it's streaming when it is not

I definitly can't reproduce that behaviour with my ipad and iPod.app. Whats your base system which is running XBMC?

Also you could compare the advertisemenents between your implementation and XBMC's implementation by investigating with http://freshmeat.net/projects/mdns-scan/ (at least i think ... havn't tried it, but it reads like it does exactly what is needed here...)

thx in advance ...
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply
#11
Hi,

Can't reproduce either after restart. Crystalbuntu was the base system (Hardy 8.0.4). The implementations were essentially the same: two TCP services on Zeroconf using the avahi daemon/mDNsResponder
Reply
#12
I would actually prefer seeing 2 devices when using a video app on an idevice. One for Airplay, and one for Airtunes. Sometimes, i just want to have the sound of the clip, because the TV connected to XBMC is not on. (I use an USB Dac, obviously wont work with HDMI audio)

When using an Airport Express, the sound will be in sync with what is displaying on the ipad/ipod. So the airtunes protocol has some self synchronization code built in. Air server does not support synchronization, but I know Airfoil Speakers do. At least when using Airfoil, but I think also when using iTunes native Airtunes. At a party I had all 3 rooms in sample perfect sync between an local computer, apple airport express, airfoil speakers, with a mix of ethernet, ethernet over power, and wifi.

Shairport too did not support synchronization so obviously the airtunes option should not be displayed with a video app. But if synchronization is indeed supported on XBMC, then we should have the option of seeing both Airplay and Airtunes.
Reply
#13
To get sound only, lock iDevice, double tap home and press Play to speaker
Reply
#14
Yeah but that is an ackward workaround.. Airserver shows both.. Should be an option inside XBMC to make it possible.
Reply
#15
Not really awkward, how it should be I believe.
Reply

Logout Mark Read Team Forum Stats Members Help
XBMC AirPlay broadcast method0