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

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达成协议。

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

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


文章标题:视频开发中的传输协议介绍
文章网址:https://www.cdcxhl.com/news/45367.html

成都网站建设公司_创新互联,为您提供网站导航ChatGPT网站设计移动网站建设网站收录网站营销

广告

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

绵阳服务器托管