经过几个月的攻关,成功实现了RTC的直播推流与播放技术

众所周知,目前市面上存在的大部分的直播流技术,采用的直播推流都是RTMP协议,主要的架构框架大概为RTMP推流、服务端同步转换并输出RTMP、FLV、HLS等多种协议,相比于10年前的直播技术,这种技术体系已经是非常先进的了,各种低延时的策略都有了,看起直播来也算是比较流畅的:
EasyDSS直播技术
但当我们将这种技术应用到行业中的时候,就会感受到弊端:

  • 当推流设备为无线设备或者在网络较差的环境下时,RTMP的推流会出现较大的延时;
  • 播放端一般采用的是RTMP或者HTTP-FLV技术,其主要保障的是数据的完整性,而实时性的控制只能靠播放buffer来调节,不属于实时性优先型的直播;
  • RTMP、FLV流,无法充分利用H5浏览器的底层框架能力,RTMP需要flash、HTTP-FLV又是基于HTTP的框架之上,无法做到非常好的拥塞控制;

现在各大公有云厂商都在推进自己的RTC直播技术进程,按照我的理解,所谓的RTC直播,主要是几方面:

  • 一定要利用到WebRTC的底层框架对播放客户端的支撑,才能充分发挥WebRTC的优势;
  • WebRTC服务器不局限于某一种流程,百家争鸣,各自可以在流程范围内定义自己的流程;
  • WebRTC可以理解为HTTPS+RTP,信令沟通用HTTPS,流媒体用RTP;

经过几个月的攻关,我们也马上要发布我们的RTC整体框架,包括RTC的推流、RTC服务器、RTC播放器等,先可以看一下TSINGSEE的RTC对安防视频流的分发:

EasyRTC

这套RTC流程的实现,将会对我们之前做的RTMP推流、RTMP播放、UDP组播同屏等技术都将是一次革新,在实时性要求非常强的领域,RTC特性的支持,将对产品的竞争力是一次质的提升;

猜你喜欢

转载自blog.csdn.net/xiejiashu/article/details/112759817