我正在开发iOS应用并将其投射到我的Chromecast。我使用的是最新的Cast SDK,默认接收器应用,库存转换按钮和设备选择对话框等。
我可以成功地将HLS VOD播放列表投射到Chromecast,它可以正常播放。当我尝试播放HLS Livestream播放列表时,我会在播放3-5分钟后断开连接。
我的GCKSessionManagerListener
收到来自{strong> -1 的暂停原因的sessionManager(_ sessionManager: GCKSessionManager, didSuspend session: GCKSession, with reason: GCKConnectionSuspendReason)
,其中......甚至不在enum中,会发生什么?
我也在Xcode的日志中得到了这个,虽然我无法判断它是影响还是降水:
2018-04-10 09:43:58.414377-0700 iOS[4968:4491455] [] <<<< AVOutputDeviceDiscoverySession (FigRouteDiscoverer) >>>> -[AVFigRouteDiscovererOutputDeviceDiscoverySessionImpl outputDeviceDiscoverySessionDidChangeDiscoveryMode:]: Setting device discovery mode to DiscoveryMode_None (client: iOS)
这是由于我的iPhone应用程序转到后台导致而不是,因为大多数&#34;断开连接问题&#34;似乎是;事实上,它可以转到后台,因为我configured使用suspendSessionsWhenBackgrounded = false
的上下文选项。它在大约4分钟后就死了。
如果我切换到一个股票接收器应用程序并通过chrome://inspect
调试它,我看到在播放开始附近只有一个错误(关于不应该设置的项目ID)然后大约4分钟后我得到Debugging connection closed. Reason: Connection was lost.
如何调试此内容或获取有关我的会话断开连接的原因的详细信息?
答案 0 :(得分:1)
您正在使用的媒体流中的某些内容不匹配,以及您的流所需的规范。
尝试使用您的设备播放一些示例视频(适用于演示示例),看看您是否遇到同样的问题。
如果您能够使用相同的代码正确播放某些视频,请尝试按照chromecast提供的规范对流进行更改。