我尝试将HLS流广播到IOS设备。HLS的工作方式类似于实时会话。我有几个视频文件,并与#EXT-X-ENDLIST分享每个单独的视频。我一个接一个地发送。第一个视频可以正常播放,但是下一个视频没有从头开始,IOS设备会跳过这个hls播放列表。
例如:
enter code here
#EXTM3U
#EXT-X-TARGETDURATION:1
#EXT-X-MEDIA-SEQUENCE:1
#EXTINF:1,
mystream-1.ts
#EXTINF:1,
mystream-2.ts
#EXTINF:1,
mystream-3.ts
#EXTINF:1,
mystream-4.ts
#EXTINF:1,
mystream-5.ts
#EXTINF:1,
mystream-6.ts
#EXTINF:1,
mystream-7.ts如果IOS接收到这样的播放列表,那么它不会从mystream-1开始播放。
我怎么才能修复它呢?
发布于 2013-07-02 19:29:40
当播放列表用于实况流(没有#EXT-X-ENDLIST)时,客户端将从播放列表末尾开始播放几个片段,这是正常的。这是因为它期望播放列表将用更多段连续更新,并且客户端将在循环中检索播放列表。
你只需在播放列表的末尾添加#EXT-X-ENDLIST标签就可以解决这个问题。
或者,您可能希望流继续增长,在这种情况下,您可以尝试使用带有以下标记的事件播放列表:#EXT-X-PLAYLIST-TYPE:EVENT
客户端的预期行为没有指定,所以我不确定应用程序是否会从头开始播放它,但至少它应该能够从头开始。
https://stackoverflow.com/questions/17423639
复制相似问题