WebRTC在直播软件开发中的地位
直播的兴起和5G时代的到来对于WebRTC来说是一次很好的机遇,现在使用WebRTC技术的公司越来越多,学习和掌握WebRTC对于音视频开发者而言已经成为必要的技术之一。那么,WebRTC在直播软件开发中的地位如何?接下来,小编将为大家简单介绍下:
一、WebRTC在直播软件开发中的现状
现在使用WebRTC技术的公司越来越多了,如果你密切关注直播领域的话,你会发现一个很有趣的变化,随着直播业务的增长,传统的流媒体由于延时大不能满足于各种应用场景的需求,一些可替代性的解决方案纷纷登场,而WebRTC是一直是这些技术解决方案中的佼佼者。
二、如何使用WebRTC来做直播?
通常推流端使用WebRTC将本地视频上传到流媒体服务器端,然后在服务端将WebRTC的流转码成RTMP,HLS,MPEG-DASH等,再通过传统的流媒体通道进行直播分发。
这个架构还是借助传统直播的方案,只是利用了WebRTC的特性将推流端到服务端之间的流传进行优化,这样做的最大问题是服务端的性能消耗和直播分发的延时,我们知道类似HLS这样的协议通常延时在15s+。然而在前面的文章中我们讲到,无论如何优化,只能做到低延迟,而无法完全做到无延迟,所以WebRTC在这一堆视频录制协议中,算是比较优秀的了。
三、WebRTC能做什么?
由于传统直播方案无法应对低延迟直播场景,这就是为什么需要一个全新的直播架构,当然低延时和实时性是必需的。但是由于一个协议的标准化和实施需要很长时间,因此目前最佳的可选方案就是WebRTC,早在2018年6月,WebRTC 1.0规范正式发布,各大厂商均表现出很高的积极性,而且现在大多数浏览器已经对其原生支持,这对WebRTC未来更加广泛的应用打下了非常夯实的基础。
截止到目前,在大多数直播软件开发项目中,几乎所有的流媒体都会走WebRTC通道,这样可以保证整个流媒体从推流端到观看端的每个环节都能使用WebRTC的特性。
当然,使用WebRTC做直播依然有很多难点需要攻克,广播服务器需要具备大容量,大并发,低延时,可动态伸缩,可灾备等一些列高级特性,而不仅仅是简单的媒体流转发。例如现在大多数的服务器方案的WebRTC实现几乎是背靠背的实现—它们在服务端对每个连接模拟一个完整的客户端来接收或转发WebRTC的媒体流。这样实现没有问题,但是依然很难应对上千、几万或数百万的大并发连接。这也是WebRTC下一步应该优化的地方。
以上,就是目前WebRTC在直播软件开发中的地位,由此可见,WebRTC近几年的发展势头都是不能够忽略的,不久的将来WebRTC会在更多场景中广泛应用,而不仅仅是直播行业。如果您对直播软件开发、直播系统搭建的项目感兴趣,欢迎咨询官方客服。
本文章声明原创,转载请注明出自云豹科技www.yunbaokj.com