最近忙着学习MSS(Microsoft smooth streaming),都忘了HLS的内容。最近遇到几个bug都是hls seek有关,hls的精准seek问题,seek的最小单位是视频分片(ts流),导致无法精准seek到关键帧。虽然说现在有的code不支持,就把这个bug推出去了。
我在网上看到大量和我有类似的hls seek问题,我以为是apple设计如此呢。(显然不能甩锅给apple)
今天经理告诉我一个方法就是可以通过seek到某一个视频分片,下载后,到seek的时间点开始播放,这样也可以做到精准seek。
下面梳理一下hls的基础知识:
playlist(m3u8)介绍
HLS中的playlist是一个UTF-8编码的文本文件,其中包含了URL和描述性标签。一个常规的playlist如下所示:
#EXT-X-VERSION:3 #EXTM3U #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:1 # Old-style integer duration; avoid for newer clients. #EXTINF:10, http://media.example.com/segment0.ts # New-style floating-point duration; use for modern clients. #EXTINF:10.0, http://media.example.com/segment1.ts #EXTINF:9.5, http://media.example.com/segment2.ts #EXT-X-ENDLIST
讯享网
其中以'#'打头的行都是标签ÿ

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/48108.html