WebRTC概念

 Web Real-Time Communication,web实时通信技术。简单说就是在web浏览器里边引入实时通信,包括音视频通话等。


WebRTC提供了视频会议的核心技术,包括音视频采集、编解码、网络传输、显示等功能,支持跨平台:Windows,Linux,Mac,Android,尤其是在实时通信方面的很多技术可以灵活嫁接到非RTC类流媒体系统中,例如,在低带宽下的视频抖动控制,图像效果增强,通用NAT穿透过程等等。

WebRTC结构

从WEB-RTC方面分析WEBRTC在浏览器上的接口结构,在浏览器端主要实现了三个接口:


1,MediaStream,实现对本地音视频资源的封装,表示一个媒体流数据,一个MediaStreamTrack表示MediaStream中的一个媒体源,如音频、视频、字幕等;

       接口名称为getUserMedia,该接口为上层提供同步的音视频流


2,RTCPeerConnection,语音或者视频通话过程,包含呼叫。应答、穿透、加密、传输及会话管理等一系列流程,一个RTCPeerConnection代表对话过程中的一端;

   
 主要是用来处理点到点之间的连接和数据传输,使整个过程能够稳定且高效。在RTCPeerConnection下,封装了大量的编解码、通信协议的工作来实现整个实时通信过程,甚至是在不能提
供稳定带宽情况下的实时通信,主要功能点包括:

* 丢包补偿(packet loss concealment)
* 回音消除(echo cancellation)
* 自适应带宽(bandwidth adaptivity)
* 视频抖动缓冲器(dynamic jitter buffering)
* 自动增益控制(automatic gain control)
* 噪声降低和抑制(noise reduction and suppression)
* 图像清理(image 'cleaning')(!暂且这么翻译吧)
3,RTCDataChannel,在RTCPeerConnection之上,传输自定义数据。

WebRTC架构

                 

                                                                           
WebRTC架构图(网上摘取)

(1)Web开发者API层;

(2)蓝色实线部分是面向浏览器厂商的API层

(3)蓝色虚线部分浏览器厂商可以自定义实现

这里有一个讲的很详细的博客,分享下:https://blog.csdn.net/fishmai/article/details/69681595
<https://blog.csdn.net/fishmai/article/details/69681595> 

 

 

 

 

 

 

 

 

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信