低延时的RTMP网络直播

互联网时代的直播需求愈来愈多,观看直播的人群对直播的要求也愈来愈高。在百度或谷歌等搜索引擎里输入关键词“网络直播延时”,你们的疑问很多:浏览器

 

ü  什么软件看直播无延迟?缓存

ü  为何网络直播与电视直播有大概2分钟的延迟?服务器

ü  CCTV 的新闻直播是实时直播,仍是作了延迟处理?网络

ü  网络直播哪家好,没有延迟的?测试

ü  为何在网上看直播会比电视直播有几分钟的延迟?搜索引擎

ü  你们如何看待关于网络直播延时的问题?编码

ü  如何解决直播延迟?spa

ü  视频直播时,你看到的是几秒之前的画面?插件

ü  但愿你们推荐一个延时比较低的直播软件。视频

 

总结下来完美的直播须要知足:

 

ü  低延时,最好无延时

ü  画面超高清质量

ü  观看体验极致,无需下载任何插件

ü  支持多种终端:安卓手机,苹果手机,PAD, PC

 


直播的观看用户对延时如此关注,那么从发布直播的运营商或者说直播技术提供商角度来讲,如何控制高清网络直播的延时呢?也就是说实时的steam串流影音传输技术涉及到的专用直播流媒体服务器系统是否能知足低延时的需求呢?

 

说到网络直播,那么咱们确定要说起流媒体服务器直播系统以及所支持的直播网络应用协议:RTMP, HLS,P2P

 

从低延时直播的角度来看,RTMP协议是做为直播协议输出最佳选择。

 

RTMP的特色以下:

 

1.   Adobe支持得很好:

   RTMP其实是如今编码器输出的工业标准协议,基本上全部的编码器(摄像头之类)都支持RTMP输出。缘由在于PC市场巨大,PC主要是Windows,Windows的浏览器基本上都支持flash,Flash又支持RTMP支持得很是好。对于手机移动端目前大多数选择HLS协议,可是这个移动端协议延时较高。若是但愿移动端延时低,那么目前最佳的选择是开发支持RTMP协议的APP或直接采用较好的支持RTMP协议观看的APP。

 

2.   适合长时间播放:

   由于RTMP支持的很完善,因此能作到flash播放RTMP流长时间不断流,对于商用流媒体应用,客户端的稳定性固然也是必须的,不然最终用户看不了还怎么玩?

 

3.   延迟较低:

   比起YY的那种UDP私有协议,RTMP算延迟大的(延迟在1-3秒),比起HTTP流的延时(通常在10秒以上)RTMP算低延时。 通常的直播应用,只要不是电话类对话的那种要求,RTMP延迟是能够接受的。

 

4.   有累积延迟:

   技术必定要知道弱点,RTMP有个弱点就是累积偏差,缘由是RTMP基于TCP不会丢包。因此当网络状态差时,服务器会将包缓存起来,致使累积的延迟;待网络情况好了,就一块儿发给客户端。这个的对策就是,当客户端的缓冲区很大,就断开重连。

 

笔者作了RTMP协议的直播延时的两个测试:(选择八百里流媒体服务器系统为测试直播分发系统)

1.   通过软件编码推送直播至流媒体直播系统RTMP网络分发

测试结果:从H.264编码、通过流媒体系统的分发、最终PC观看者的过程,延时在3秒。


2.   网络摄像头输出的RTSP流,通过八百里外部信号适配器软件转协议不编码,进入八百里流媒体服务器系统RTMP网络分发 

测试结果:从RTSP流、通过外部信号适配器软件转流、流媒体系统分发、最终PC观看者的过程,延时1秒。