当前位置:首页 > 财经

hls 音视频:HLS协议简介

HTTP Live Streaming(简称HLS)是苹果公司提出的基于HTTP的流媒体网络传输协议。是苹果的QuickTime X和iPhone软件系统的一部分。它的工作原理是把整个流分成基于HTTP的小文件下载,一次只下载一部分文件。当媒体流正在播放时,客户端可以选择以不同的速率从许多不同的备用源下载相同的资源,从而允许流媒体会话适应不同的数据速率。在流媒体会话开始时,客户端将下载包含元数据的扩展M3U (m3u8)播放列表文件,以找到可用的媒体流。

HLS只请求基本的HTTP消息。与实时传输协议(RTP)不同,HLS可以通过任何允许HTTP数据通过的防火墙或代理服务器。使用内容分发网络传输媒体流也很容易。

苹果把HLS协议作为互联网草案(按部就班提交),第一阶段作为非正式标准提交给IETF。但是,即使苹果偶尔提交一些小的更新,IETF也没有进一步制定该标准的行动。

协议介绍

根据HLS协议,视频打包格式为TS。

视频编码格式为H264,音频编码格式为MP3、AAC或AC-3。

除了TS视频文件本身,还定义了用于控制回放的m3u8文件(文本文件)。

其实苹果之所以提出HLS,主要是为了解决RTMP的一些问题。例如,RTMP协议不使用标准的HTTP接口传输数据,因此在某些特殊的网络环境下可能会被防火墙阻挡。但是因为HLS使用HTTP协议传输数据,所以不会被防火墙阻挡(不会有防火墙不放过接口80)。

此外,RTMP是一个有状态的协议,这使得很难平滑地扩展视频服务器,因为需要为每个播放视频流的客户端维护状态。而HLS是基于无状态协议(HTTP)的,客户端只按顺序使用和下载服务器中存储的普通TS文件,所以和普通HTTP文件服务器的负载均衡一样简单。

另外,HLS协议本身实现了速率适配,不同带宽的设备可以自动切换到最合适速率的视频播放。其实HLS最大的优势就是他爸爸是苹果。苹果只在其iOS设备上提供HLS原生支持,放弃了flash。安卓也是被平果的“嚣张”逼得本土支持HLS。因此,flv、rtmp和其他Adobe视频解决方案需要额外的努力才能在移动设备上播放。当然,闪存对移动设备造成的性能压力确实是它自身的问题。

但是HLS也有一些无法穿越的坑。例如,使用HLS协议的视频直播延迟时间不能小于10秒,而RTMP协议的延迟时间可以低至3秒或4秒。因此,对于直播延迟敏感的服务,请谨慎使用HLS。

图片来自苹果官网

解释这张图,从左到右,左下方输入的视频源是什么格式并不重要,它和服务器之间的通信协议可以是任意的(比如RTMP),只要视频数据传输到服务器即可。这个视频在服务器上转换成HLS格式的视频(TS和m3u8两种文件)。详细看服务器中的Media编码器,有一个转码模块负责将视频源中的视频数据转码为目标编码格式(H264)的视频数据,视频源的编码格式可以是任何视频编码格式(参考视频技术基础)。视频转码为H264视频数据后,在流分割器模块中进行切片,切片结果为索引文件(m3u8)和ts文件。其实图中的Distribution只是一个普通的HTTP文件服务器,然后客户端只需要访问一级索引文件的路径就可以自动播放HLS视频流。

HLS的索引文件

所谓的索引文件就是前面提到的m3u8文本文件。

图片来自苹果官网

如上图所示,客户端播放HLS视频流的逻辑其实很简单。首先下载一级索引文件,记录二级索引文件(Alternate-A,Alternate-B,Alternate-C)的地址,然后客户端下载二级索引文件,记录TS文件的下载地址,这样客户端就可以按顺序下载TS视频文件并连续播放。

1.《hls 音视频:HLS协议简介》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《hls 音视频:HLS协议简介》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/caijing/1194543.html

上一篇

喀麦隆足球队 足球——E组:加拿大队胜喀麦隆队

下一篇

香港机场临时禁制令延长 禁止令是什么延长到什么时候

三星和苹果辐射超标是怎么回事?苹果怎么回应的?

三星和苹果辐射超标是怎么回事?苹果如何回应?近日,有媒体对11款智能手机进行了辐射水平测试,发现iPhone 7的射频辐射暴露量超过了法定限值,是苹果此前公布的数字的两倍多。对此,苹果回应:“包括iPhone7在内的所有iPhone机型都通过了...

王喆现身公证处申请辟谣?力破此前不雅视频谣传?

王喆现身公证处申请辟谣?力破此前不雅视频谣传?

汪哲出现在公证处申请谣言?打破之前的不雅视频谣言?8月26日,汪哲现身上海黄埔公证处申请造谣,并起诉恶意造谣营销号。此前有传言称,不雅视频中的男主是汪哲,他的半张照片和脖子上的痣与汪哲相似。香蕉娱乐也在当天发声:“网上视频全部是假的,将追究谣言...

肖战视频专访回应争议 具体怎么回应

肖战视频专访回应争议 具体怎么回应

肖恩肖视频采访回应争议5月6日晚,肖恩来接受了某媒体采访,就此前“AO3事件”相关争议作出正式回应。在采访中,有人问我之前发布的《记住这段往事》。感谢所有善意的批评和指正,我在路上长大。”在博文的真实想法中,肖恩道出了自己的心情,并向受影响的网...

苹果捐款修复雨林 苹果捐了多少钱雨林还能恢复吗

苹果捐款修复雨林 苹果捐了多少钱雨林还能恢复吗

据外媒报道,当地时间8月26日,苹果CEO蒂姆·库克在推特上表示,苹果将捐款修复这段时间被大火破坏的亚马逊雨林,修复当地植被和生态多样性。然而,库克没有透露具体的捐赠金额。(苹果捐款修复雨林)库克说,看到世界上最重要的生态系统之一亚马逊雨林遭受...

苹果修复越狱漏洞 彻底修复了吗越狱漏洞是什么

周一(8月26日),苹果发布了iOS 12.4.1,重新修复了iOS 12.3打了补丁但iOS 12.4打了补丁的bug。苹果表示,该补丁解决了黑客可能“以系统权限执行任意代码”的问题,并成功修复了越狱漏洞。大约一周前,有报道称苹果的iOS 1...

苹果捐款修复雨林是怎么回事?苹果捐款金额曝光

苹果捐款修复雨林是怎么回事?苹果捐款金额曝光

苹果捐款修复雨林是怎么回事?苹果捐款金额曝光据苹果CEO蒂姆·库克称,在社交平台上,苹果将计划向亚马逊雨林捐款,以“保护和恢复”雨林。但是库克没有透露苹果计划捐赠多少钱。他说,“看到世界上最重要的生态系统之一亚马逊雨林遭受火灾和毁灭性破坏,令人...

苹果发布最新安全补丁 越狱漏洞已经被修复?

苹果发布最新安全补丁 越狱漏洞已经被修复?

苹果发布最新安全补丁越狱漏洞已修复?苹果公司今天推出了iOS更新,以解决以前的更新补丁没有解决的问题。其中最新的补丁解决了黑客可能“以系统权限执行任意代码”的问题,指的是iOS越狱。如果你想用iPone越狱,那么你可以不升级这个补丁,因为升级之...

苹果将捐款修复亚马逊雨林 苹果为何要捐款捐多少

苹果将捐款修复亚马逊雨林 苹果为何要捐款捐多少

苹果首席执行官蒂姆·库克26日在推特上表示,苹果计划向亚马逊雨林捐款,用于“保护和恢复”雨林。这是什么情况?来和边肖一起看看。库克说,“亚马逊雨林是世界上最重要的生态系统之一,看到火灾造成的破坏是毁灭性的”。他在推特上写道:“苹果将捐款帮助保护...