AirPlay glitches
#1
Shocked 
Hey guys,

I was wondering if it's just me or someone else is also experiencing some glitches when trying to use AirPlay (I know it's experimental but I'd love to help finding bugs) - sometimes streaming sound just stops working, if I try to stream video it works perfectly but only restarting the AirPlay server in XBMC solves the issue.

I looked in the log (having airplay debug logs on) and I see that a connection started and that I also got rtsp stream, still nothing.

Here's the log - http://xbmclogs.com/show.php?id=159791

Edit:
After looking again I stumbled on the following lines which seems relevant:
Code:
21:10:37 908.458435 T:3037164320   ERROR: Init: Error creating demuxer
21:10:37 908.459900 T:3037164320   ERROR: CAudioDecoder: Unable to Init Codec while loading file pipe://3/
21:10:37 908.461548 T:3037164320 WARNING: PAPlayer::QueueNextFileEx - Failed to create the decoder

Thanks! Big Grin
guti
Reply
#2
You don't say what install of XBMC you're using (Raspbmc, OpenElec, Xbian, XBMC on Raspbian) or whether you're using Frodo or a recent build of Gotham.

Without that information nobody can help you. If you're running Frodo then there are known problems with Airplay on iOS 7 - only if you're running the very recent Gotham builds (in the last week or so) will Airplay be working properly. So a little bit more information please.
Kodi 18.3 - Mid 2007 Mac Mini, 4GB, 2TB HD, Windows 7 SP1
Kodi 18.3 - Vero4k, Raspberry Pi 2. OSMC.
Reply
#3
And don't cut down logs. Use xbmclogs.com if log is too large for pastebin.
If you had posted the complete log, then the version of xbmc used could be determined.
Reply
#4
Sorry guys -
I'm running the latest nightly build (xbmc-13-20140326-nc3) on raspbmc.

Here's the full log - the last 4 actions I did were -

http://xbmclogs.com/show.php?id=160521
  • Successfully play spotify audio stream
  • Successfully play youtube video stream
  • Failure to stream spotify audio (or any kind of airplay audio stream)
  • Tried closing and starting the airplay connection but I'm getting the same errors in creating the demuxer
Reply
#5
Did you explicitly stop the youtube playback before attempting audio playback ?

When you "stream" the youtube app over airplay the iOS device doesn't send the video stream to XBMC - it sends it a URL and XBMC plays the stream directly from youtube. (Some other apps which play local content such as instacast or the built in videos app do actually stream the video data)

You can prove this by forcibly end-tasking the youtube app and playback will continue. Even after shutting down the iOS device playback will continue.

Try cancelling playback at the XBMC end (press the stop button on your remote or X on the keyboard) between playing youtube and spotify and see if that works.

If XBMC thinks the youtube stream is still active but the iOS device thinks it isn't it can get into a state where it's not ready to accept another stream.

I see this same kind of behaviour where they get out of sync on other 3rd party Airplay software like Reflector as well - I don't think anyone has reverse engineered the airplay protocols enough to give seamless bug free airplay support under all use scenarios, and the youtube app seems to be particularly troublesome. (Try another app that plays locally stored video to see if it has the same problem)
Kodi 18.3 - Mid 2007 Mac Mini, 4GB, 2TB HD, Windows 7 SP1
Kodi 18.3 - Vero4k, Raspberry Pi 2. OSMC.
Reply
#6
Applying level 3 logs to this problem and some extensive testing:

Logs below from raspbmc latest build.

The following tests are interesting:

IOS7 IPHONE 5S Raspberry connected via via WiFi - OK
IOS7 IPHONE 5S Raspberry connected via via eth0 - FAIL
IOS7 IPAD MINI Raspberry connected via via eth0 - OK
IOS7 IPAD MINI Raspberry connected via via eth0 - OK

So the problems seems to be related to both the Iphone only, and also connecting via eth0 rather than a wifi socket.

This is a long standing problem as far as I am aware with RASPBMC as I have seen this behavior from early last year.

Hopefuly this helps the devs narrow down the issue?

PHP Code:
16:43:34 T:3036635936   DEBUGCPlayerCoreFactory::GetPlayers(pipe://2/)
16:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulesystem rules
16
:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersmatches rulesystem rules
16
:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulertv
16
:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulehdhomerun/myth/mms/udp
16
:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulelastfm/shout
16
:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulertmp
16
:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulertsp
16
:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulestreams
16
:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersconsidering ruledvd
16
:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersconsidering ruledvdfile
16
:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersconsidering ruledvdimage
16
:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulesdp/asf
16
:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulensv
16
:43:34 T:3036635936   DEBUGCPlayerSelectionRule::GetPlayersconsidering ruleradio
16
:43:34 T:3036635936   DEBUGCPlayerCoreFactory::GetPlayersmatched 0 rules with players
16
:43:34 T:3036635936   DEBUGCPlayerCoreFactory::GetPlayersadding audiodefaultplayer (3)
16:43:34 T:3036635936   DEBUGCPlayerCoreFactory::GetPlayers: for video=0audio=1
16
:43:34 T:3036635936   DEBUGCPlayerCoreFactory::GetPlayersadding playerPAPlayer (3)
16:43:34 T:3036635936   DEBUGCPlayerCoreFactory::GetPlayers: for video=1audio=1
16
:43:34 T:3036635936   DEBUGCPlayerCoreFactory::GetPlayersadding playerDVDPlayer (1)
16:43:34 T:3036635936   DEBUGCPlayerCoreFactory::GetPlayersadding playerOMXPlayer (4)
16:43:34 T:3036635936   DEBUGCPlayerCoreFactory::GetPlayersadded 3 players
16
:43:34 T:3036635936   ERRORInitError creating demuxer
16
:43:34 T:3036635936   ERRORCAudioDecoderUnable to Init Codec while loading file pipe://2/
16:43:34 T:3036635936 WARNINGPAPlayer::QueueNextFileEx Failed to create the decoder
16
:43:34 T:3036635936   DEBUGOnQueueNextItem play state was 1starting 1
16
:43:34 T:3036635936   DEBUGOnPlayBackStopped play state was 1starting 0
16
:43:34 T:3036635936   DEBUGCAnnouncementManager AnnouncementOnStop from xbmc
16
:43:34 T:3036635936   DEBUGGOT ANNOUNCEMENTtype1from xbmcmessage OnStop
16
:43:34 T:3036635936   DEBUGCAnnouncementManager AnnouncementOnVolumeChanged from xbmc
16
:43:34 T:3036635936   DEBUGGOT ANNOUNCEMENTtype64from xbmcmessage OnVolumeChanged 

In contrast this is what happens in playback from an Ipad (which works)

PHP Code:
17:10:31 T:2856600640   DEBUGGOT ANNOUNCEMENTtype64from xbmcmessage OnVolumeChanged
17
:10:31 T:3037070112   DEBUGCPlayerCoreFactory::GetPlayers(pipe://3/)
17:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulesystem rules
17
:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersmatches rulesystem rules
17
:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulertv
17
:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulehdhomerun/myth/mms/udp
17
:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulelastfm/shout
17
:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulertmp
17
:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulertsp
17
:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulestreams
17
:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersconsidering ruledvd
17
:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersconsidering ruledvdfile
17
:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersconsidering ruledvdimage
17
:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulesdp/asf
17
:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersconsidering rulensv
17
:10:31 T:3037070112   DEBUGCPlayerSelectionRule::GetPlayersconsidering ruleradio
17
:10:31 T:3037070112   DEBUGCPlayerCoreFactory::GetPlayersmatched 0 rules with players
17
:10:31 T:3037070112   DEBUGCPlayerCoreFactory::GetPlayersadding audiodefaultplayer (3)
17:10:31 T:3037070112   DEBUGCPlayerCoreFactory::GetPlayers: for video=0audio=1
17
:10:31 T:3037070112   DEBUGCPlayerCoreFactory::GetPlayersadding playerPAPlayer (3)
17:10:31 T:3037070112   DEBUGCPlayerCoreFactory::GetPlayers: for video=1audio=1
17
:10:31 T:3037070112   DEBUGCPlayerCoreFactory::GetPlayersadding playerDVDPlayer (1)
17:10:31 T:3037070112   DEBUGCPlayerCoreFactory::GetPlayersadding playerOMXPlayer (4)
17:10:31 T:3037070112   DEBUGCPlayerCoreFactory::GetPlayersadded 3 players
17
:10:31 T:3037070112   DEBUGFactoryCodec Audiopassthrough Opening
17
:10:31 T:3037070112   DEBUGFactoryCodec Audiopassthrough Failed
17
:10:31 T:3037070112   DEBUGFactoryCodec Audiopcm Opening
17
:10:31 T:3037070112   DEBUGFactoryCodec Audiopcm Opened
17
:10:32 T:3037070112    INFOAudioDecoderFile is queued
17
:10:32 T:3037062208    INFOCActiveAEResamplePi::CActiveAEResample
17
:10:32 T:3037062208    INFOCActiveAEResamplePi::Init remap:(nilchan:2->2 rate:44100->44100 format:1->3 bits:1                                                                                                         6->32 norm:1 upmix:0
17
:10:32 T:3037070112   DEBUGAudioDecoder::GetReplayGain - Final Replaygain applied1.000000Track/Album Gain 8                                                                                                         9.000000Peak 0.000000
17
:10:32 T:3037062208    INFOCActiveAEResamplePi::Init    1.00   0.00   0.00   0.00   0.00   0.00   0.00   0.00
17
:10:32 T:3037062208    INFOCActiveAEResamplePi::Init    0.00   1.00   0.00   0.00   0.00   0.00   0.00   0.00
17
:10:33 T:3037062208    INFOCActiveAEResamplePi::Init    0.00   0.00   0.00   0.00   0.00   0.00   0.00   0.00
17
:10:33 T:3037062208    INFOPrevious line repeats 5 times.
17:10:33 T:3037062208   DEBUGCOMXCoreComponent::Initialize OMX.broadcom.audio_mixer input port 232 output port 23                                                                                                         1 m_handle 0x2aec3d0
17
:10:33 T:3037062208   DEBUGCOMXCoreComponent::AllocInputBuffers component(OMX.broadcom.audio_mixer) - port(232)                                                                                                         , nBufferCountMin(1), nBufferCountActual(1), nBufferSize(524288), nBufferAlignmen(32)
17:10:33 T:3037062208   DEBUGCOMXCoreComponent::AllocOutputBuffers component(OMX.broadcom.audio_mixer) - port(231                                                                                                         ), nBufferCountMin(1), nBufferCountActual(1), nBufferSize(524288nBufferAlignmen(32)
17:10:33 T:3037062208   DEBUGCActiveAE::ClearDiscardedBuffers buffer pool deleted
17
:10:33 T:3037070112    INFOPAPlayer::PrepareStream Ready
17
:10:33 T:3037070112   DEBUGPlayFile OpenFile succeedplay state 1
17
:10:33 T:2789491776  NOTICEThread PAPlayer startauto deletefalse
17
:10:33 T:2789491776   DEBUGPAPlayer::Process Playback started
17
:10:33 T:2789491776   DEBUGOnPlayBackStarted play state was 1starting 0
17
:10:33 T:3037070112   DEBUGCGUIInfoManager::SetCurrentSong(pipe://3/)
17:10:33 T:3037070112   DEBUGLoadMusicTagloading tag information for filepipe://3/
17:10:33 T:3037070112   DEBUGLoading additional tag info for file pipe://3/
17:10:33 T:3037070112   DEBUGCAnnouncementManager AnnouncementOnPlay from xbmc 
Reply

Logout Mark Read Team Forum Stats Members Help
AirPlay glitches0