视频开发中的传输协议介绍

2016-08-04    分类: 网站建设

搭建视频直播源码能够带来的直播业务,需要什么样的流程运作才能实现线上的无忧呢?这是每个开发者都需要在开发前期思考的问题。

对于直播业务来说,推流和传输是非常重要的部分。可能大部分人都认为,只要拥有一套优质的在线直播源码,就可以顺利进行开发和搭建等步骤了。但实际上,推流对于直播的影响是非常大的。如果说,推流的过程中网络十分不稳定,那么不论我们怎样优化,最终开发出的app在运行过程中也会给用户带来糟糕的体验。本文主要分享开发时需要了解的几个推送协议。

1.RTMP

(1)定义

相信大家对这个协议一点都不陌生,它就是直播中最常用的实时传输协议。RTMP基于TCP是一个协议族(包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种)。RTMP是一种设计用来进行实时数据通信的网络协议,主要用于在Flash/AIR平台和支持RTMP协议的流媒体、交互服务器之间进行音视频和数据通信。

(2)优势

主要体现在CDN支持良好,大部分主流的CDN厂商都可以支持。并且协议相对简单,容易在各个平台上实现。

(3)劣势

由于RTMP是基于TCP,传输成本较高。而且在弱网环境下丢包率较高的情况十分明显,不支持浏览器推送。

2.Web RTC

(1)定义

Web RTC名称源自网页即时通信,是一个支持网页浏览器进行实时语音对话或视频对话的API。它于2011年6月1日开源并在Google、Mozilla、Opera支持下被纳入万维网联盟的W3C推荐标准。目前主要应用于视频会议和连麦中。

(2)优势

W3C的标准,支持主流浏览器的程度较高。底层基于SRTP和UDP,在弱网情况下优化的空间较大,能够实现点对点通信,通信时双方产生的延时较低。

(3)劣势

传统的CDN支持性较差。

3.基于UDP的私有协议

(1)简介

有的直播应用场景会使用UDP作为底层的协议,然后开发自己的私有协议。因为UDP在弱网环境下可以通过一些定制化的调优,从而达到较好的弱网优化效果。

(2)优势

具备更多的空间进行定制化的优化。

(3)劣势

大家比较关心的一点就是,开发成本较高。CDN支持不太友好,需要自建CDN或者是和CDN达成协议。

其实在直播应用场景下推送出去的流媒体需要传输到用户端,这一个链路就是所谓的传输网络。如果在传输过程中出现网络拥塞的情况,就需要进行一定的智能调度,从而使得传输网络保持顺畅。

总体而言,拥有一套完整的在线直播源码是直播软件开发的最基础的一步。协议是后期直播业务流程保障的基本。


文章标题:视频开发中的传输协议介绍
文章路径:/news17/45367.html

成都网站建设公司_创新互联,为您提供网站导航品牌网站建设面包屑导航网站收录外贸网站建设网站内链

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站优化排名