我开始在CCL上使用VideoCastManager.isRemoteStreamLive()方法,但我才意识到它总是返回false。该方法似乎依赖于info.getStreamType(),所以我想知道谁应该将该类型设置为实况流?有没有办法在接收端做到这一点?
谢谢。
发布于 2014-06-26 16:56:29
这些是你的流吗?如果是这样,最好的选择是将某些内容放入元数据或指示其为实况流的曲目中。如果这是不可能的,有一些“嗅探”策略可能是有用的,也可能是无效的。
首先,HTML5视频元素的规范规定,如果不能确定视频的边界(即持续时间),那么getDuration方法应该返回无穷大( javascript常量等于Number.POSITIVE_INFINITY)。这并不总是意味着视频是流的(例如,响应的content-length报头可能有问题),但这可能是您最好的选择--让您的接收器加载元数据后,调用getDuration并查看返回的内容。
您还可以让接收器查看视频源(视频元数据的currentSrc属性) --许多实况流都是自适应比特率流,因此在视频元素中将其表示为视频源( .m3u8 source )。
但这些只是经过深思熟虑的猜测;正如Ali在他的一条评论中指出的那样,客户端没有编程方法(无论是通过原生javascript API还是Chromecast API)来确定流是实况流。
https://stackoverflow.com/questions/23964542
复制相似问题