在将两个视频文件“捆绑”在一起时,我们看到了这一点。
示例我们有分段的广告视频和也是分段的内容文件。 我们创建了一个同时包含广告和内容细分信息的新文件。但是,我们发现广告内容被截断或内容开始出现A / V同步问题的问题。 广告和内容都以相同的方式进行细分,5秒分割。但是,由于广告的长度是可变的,因此结果文件可能会遗留以下内容:
#EXTM3U
#EXT-X-TARGETDURATION:5
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:5,
fileSequence6.ts
#EXTINF:5,
fileSequence7.ts
#EXTINF:4,
fileSequence8.ts
#EXTINF:5,
fileSequence0.ts
#EXTINF:5,
fileSequence1.ts
#EXTINF:5,
fileSequence2.ts
#EXTINF:3,
fileSequence3.ts
这是一个接一个播放2个文件而没有重新缓冲的正确方法吗? 应该将generate-variant-plist用于2个文件的播放列表吗?
答案 0 :(得分:0)
当您在流中断以切换到商业广告,广告或备用视频源时,您希望在下一个片段开始之前引入不连续性标记,例如:
#EXTM3U
#EXT-X-TARGETDURATION:5
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:5,
movie0.ts
#EXTINF:2,
movie1.ts
#EXT-X-DISCONTINUITY
#EXTINF:5,
commercial0.ts
#EXTINF:5,
commercial1.ts
#EXTINF:3,
commercial2.ts
如果加密流,这会变得更加复杂,因为它们使用基于先前段加密状态和序列号的渐进式加密,这些加密状态和序列号组合在一起形成“初始化向量”。如果中断流,则必须重置初始化向量,以便加密/解密可以不间断地继续。这是一个涉及的过程,因此最好只在Apple的文档中搜索初始化向量。