【问题标题】:Is there a way to manually set the ApplicationSession network timeout for Android Chromecasting?有没有办法为 Android Chromecasting 手动设置 ApplicationSession 网络超时?
【发布时间】:2013-11-15 17:11:32
【问题描述】:

我正在向我的接收器发送一个 MediaProtocolMessageStream.loadMedia 命令。几秒钟后,我的会话以“网络 I/O 超时”结束,channel=SessionError.CATEGORY_DISCONNECT_CHANNEL 和 code=SessionError.CODE_TIMEOUT。这只发生在超过 200 分钟的较长视频中,所以我假设有一个合法的超时。无论如何调整会话中的超时时间,以便我可以加载更大的电影?我看到底层 NetworkRequest 中有一个最终的 DEFAULT_TIMEOUT,但我无法访问它。

【问题讨论】:

    标签: android google-cast chromecast


    【解决方案1】:

    应用程序无法调整超时值。这将有助于我们了解导致您的情况超时的原因。当发送方没有及时回复接收方的 ping 请求,或者发送方在一定时间内没有收到来自接收方的 ping 时,就会发生超时。 可能是您尝试加载的媒体占用了接收方的 CPU,因此无法将其 ping 请求发送给发送方。您是否在发件人的日志中看到类似于“等待 ping 的超时”之类的内容?

    【讨论】:

    • 我没有在我的发件人上看到任何内部日志记录。唯一的证据是我的 ApplicationSession.Listener() onSessionEnded 是使用前面提到的错误代码触发的。我在接收器上也找不到任何错误日志。我只看到收到了一个 LOAD 并发送了一个 STATUS。如果我能在接收器上获得一些诊断信息或在任一端进行更多记录,那就太好了。
    • 请通过 chromecast-updates 邮件列表与我联系好吗?一旦我们在那里解决了这个问题(我需要你提供更多信息),我们可以在这里报告我们的发现。
    • 如何访问该列表?
    • 请发送电子邮件至 chromecast-updates@google.com
    • 原来 Android Chromecast 代码使用 10 秒超时。解析 DASH 清单的时间超过 10 秒。我破解了 DASH 播放器中的解析代码以加快速度。现在我的视频开始播放了,但如果能够设置我自己的超时时间而不是依赖隐藏的常量,那就太好了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-19
    • 1970-01-01
    • 1970-01-01
    • 2010-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多