我有兴趣看看我是否可以使用HTTP Live Streaming(Apple)来连接两个不同的视频?例如,为了能够播放例如电视节目的商业和视频2的视频1的视频播放列表,并使用该协议在它们之间实现无间隙回放,因此在它们之间没有等待。
如果可以,有人可以告诉我如何正确形成播放列表.m3u8吗?
我尝试了以下示例:
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXTINF:10,
commercial-00001.ts
#EXTINF:10,
commercial-00002.ts
#EXTINF:9,
commercial-00003.ts
#EXTINF:7,
commercial-00004.ts
#EXTINF:10,
tv-00001.ts
#EXTINF:10,
tv-00002.ts
#EXTINF:10,
tv-00003.ts
#EXTINF:10,
tv-00004.ts
#EXTINF:10,
tv-00005.ts
#EXTINF:10,
tv-00006.ts
#EXTINF:7,
tv-00007.ts
#EXT-X-ENDLIST
然而,iOS上的播放器在播放第一个视频(商业广告)后就会冻结。缓冲条只显示它已缓冲到第一个视频的末尾。
注意:我的目标是iOS,不幸的是,闪存是不可能的:(
有没有正确的方法来执行此操作?
答案 0 :(得分:2)
除非将片段准备为单个流,否则解码器不一定能够在它们之间无缝切换。
您应该在插入的细分受众群之前和之后引入#EXT-X-DISCONTINUITY行。这可能会导致客户端发生明显(但不是破坏性)的转换,因为视频解码器将被重置。