我正在尝试通过 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 ) 支持它,但在当前版本中已删除。
取消支持的理由是什么?以及如何解决它?
我正在考虑一组临时文件并链接媒体播放器实例以进行播放,但鉴于流的性质,我宁愿限制文件系统交互......