直播平台开发的部分网络协议

直播平台开发的部分网络协议

ID:44083664

大小:29.50 KB

页数:3页

时间:2019-10-18

直播平台开发的部分网络协议_第1页
直播平台开发的部分网络协议_第2页
直播平台开发的部分网络协议_第3页
资源描述:

《直播平台开发的部分网络协议》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、直播平台开发的部分网络协议对于近些年发展火爆的直播行业,对大多数人也许是迷惑的带着一抹神秘的面纱。今天小编就给大家掀开一抹直播的神秘面纱,给大家介绍下直播平台搭建时用到的网络协议。那么首先就要知道什么是网络协议顾名思义网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合。例如,网络中一个微机用户和一个大型主机的操作员进行通信,由于这两个数据终端所用字符集不同,因此操作员所输入的命令彼此不认识。为了能进行通信,规定每个终端都要将各自字符集中的字符先变换为标准字符集的字符后,才进入网络传

2、送,到达目的终端之后,再变换为该终端字符集的字符。当然,对于不相容终端,除了需变换字符集字符外还需转换其他特性,如显示格式、行长、行数、屏幕滚动方式等也需作相应的变换。直播平台搭建时要用到的网络协议主要包括以下几种:1.RTSP协议:本协议族是最早的视频传输协议。其中RTSP协议用于视频点播的会话控制,例如发起点播请求的SETUP请求,进行具体播放操作的PLAY、PAUSE请求,视频的削悴专也是通过PLAY请求的参数支持的。而RTP协议用于具体的视频数据流的传输。RTCP协议中的C是控制的意思,

3、用于在视频流数据之外,丢包或者码率之类的控制。该协议族RTSP是建立在TCP之上的,RTP、RTCP建立在UDP之上。不过也可以通过interleave的方式,将RTP和RTSP一起在同一个TCP连接上传输。RTSP协议族,是最早被提出来的,因此很多考虑的地方,都还带有早期的特征。比如使用UDP,是考虑到传输的效率,以及视频协议本身对丢包就有一定的容忍度。但是UDP协议,显然不能用于更大规模的网络,而且复杂网络下路由器的穿透也是问题。从视频角度而言,RTSP协议族的优势,在于可以控制到视频帧,因

4、此可以承载实时性很高的应用。这个优点是相对于HTTP方式的最大优点。H.323视频会议协议,底层一般采用RTSP协议。RTSP协议族的复杂度主要集中在服务器端,因为服务器端需要parse视频文件,seek到具体的视频帧,而且可能还需要进行倍速播放(就是老旧的DVD带的那种2倍速,4倍速播放的功能),倍速播放功能是RTSP协议独有的,其他视频协议都无法支持。2・hls协议:苹果推出的HTTPLiveStreaming,就是随着苹果设备的普及得以广泛应用的一种。从名词就可以判断岀来,HLS支持Liv

5、e直播式的视频传输。HTTP采用m3u8作为索引文件,视频为MPEG2-TS格式的片段文件。如果为直播视频流,则采取更新m3u8文件,从而更新视频索引列表,达到视频直播的目的。但是这种方法,因为最终视频是片段文件,所以必然存在片段视频长度的延迟。因此只可以用于对实时性要求没有那么高的准实时视频流。但是HLS方式,因为采用了较早的MPEG2-TS格式,这种格式的overhead,也就是头部信息占据总文件的比例比较大,也就是效率不够高。之所以没有使用其他格式,主要是商业竞争和版权的问题。相应的,ad

6、obe公司,推出相似的HTTPdynamicstreaming.这种方式本质和HLS的策略是类似的,就是通过索弓I文件+视频片段的方式。但是显然采用的索引格式和视频片段格式都不一样的。HDS采用的是视频格式是flv或者f4vz索引格式记不清楚了。类似的,微软也推出了MicrosoftSmoothStreaming,也即是mss的视频播出方式,采用的视频格式是分段mp4格式。MPEG标准组则推出了DynamicAdaptiveStreamingoverHTTRDASH采用的视频格式为3GPP吧。显

7、然,这个目前是百花齐放的状态,虽然最常用的的是HLS,谁叫苹果这么霸气呢。而安卓和苹果上面对于flash都有限制,而HDS是adobe推出在adobe平台上面的。mss,只有在少数几个地方见到过。dash,目前仅仅是论文里面的产物。以上的协议,主要是解决一个问题,就是自适应码率切换,上面的dynamic,adaptive都是类似的意思。主要是利用索引文件中同时给出不同码率的视频文件的地址,这样播放器端,可以根据带宽情况,自适应选择不同码率的视频文件。同时在视频直播方面,在安卓和iOS平台以外,还

8、有很多视频服务器提供厂商,自己开发协议,一般采用方式为固定时间片段的flv文件的方式(采用flvz是因为flash上方便播放)3.RTMP(RealTimeMessagingProtocol,实时消息传送协议):RTMP是AdobeSystems公司为Flash播放器和服务器之间音频、视频和数据传输开发的开放协议。RTMP协议是被Flash用于对象、视频、音频的传输。这个协议建立在TCP协议或者轮询HTTP协议之上。RTMP协议就像一个用来装数据包的容器这些数据既可以是AMF格式的数据,也可以是

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。