如何理解EXT-X-VERSION标记

Q:当在.m3u8文件中的EXT-X-VERSIOn标记中指定了协议的版本,HLS的哪些功能可以使用?

A:标记EXT-X-VERSION可以指示出playlist文件的兼容版本,playlist和相关的媒体文件,还有服务器必须符合IETF Internet Draft of the HTTP Live Streaming Protocol specification规定的标记规范。如果playlist文件不包含EXT-X-VERSION标记,默认为协议的第一个版本。

注意:为了理解HLS的工作原理, 必须一直参考最新的IETF internet Draft,旧版本的文档记录了更新的历史。

下表是版本和标记的对应关系:

你只需要指定协议版本需要向后兼容性的一个给定的特性。

例如,您不必指定协议版本5如果你刚刚添加SUBTITLE标记。如果你不这样做,老客户会简单地忽略SUBTITLES标记,但仍然以某种形式播放。

当然,以下功能是不能乡下兼容的,老版本的客户端在使用这个标记的时候,如果没有指定相应的协议版本号可能会失败。

在EXT- X-KEY标记中使用IV必须指定协议的版本号是2

在EXTINF中使用浮点数的值必须指定协议版本号是3

使用 EXT-X-BYTERANGE 和 EXT-X-IFRAME-ONLY标记必须指定协议的版本号是4

在EXT-X-KEY标记中使用SAMPLE-AES必须指定协议的版本是5

下图是IETF internet Draft 和iOS对应的实现和支持的功能:

猜你喜欢

转载自david-je.iteye.com/blog/1909117
ext