1

我正在尝试通过 google tv 媒体播放器播放原始 liveTV mpeg2_ts 流;流是无界的(直播电视),因此没有内容长度。流是通过一个看起来像 http:///livetv?channum=X 的 url 访问的

这是用 VLC 测试的,有一个客户端,效果很好。但是使用 GTV 是另一回事

流响应标头包含标头 Tranfer-Encoding : chunked。尝试在 GTV 媒体播放器中播放该流会导致以下错误:

I/AVAPIMediaPlayer(142):发现 HTTP 成功。连接为 HTTP/1.1,代码为 206 I/AVAPIMediaPlayer(142):找到内容类型 video/mpeg W/AVAPIMediaPlayer(142):错误,在找到必填字段之前已到达标头末尾。

查看此文件:gtv_curl_transfer_engine.cpp似乎 v3 已删除对 Transfer-Encoding 的支持,并且仅支持 / 需要 Content-Length。

同一文件的先前版本 ( GTV v2 gtv_curl_transfer_engine.cpp ) 支持它,但在当前版本中已删除。

取消支持的理由是什么?以及如何解决它?

我正在考虑一组临时文件并链接媒体播放器实例以进行播放,但鉴于流的性质,我宁愿限制文件系统交互......

4

1 回答 1

1

从我与谷歌的互动来看,没有计划改变这种行为。行动方案是以 HTTP 实时流格式 (m3u8) 提供视频

于 2013-10-30T14:59:15.577 回答