WEBRTC基础知识

        WebRTCWeb Real-Time Communication实现了基于网页的视频会议,标准是WHATWG 协议,目的是通过浏览器提供简单的javascript就可以达到实时通讯(Real-Time Communications (RTC))能力。

        WebRTC项目的是让Web开发者能够基于浏览器(Chrome\FireFox\...)不使用任何插件的情况下轻易快捷开发出丰富的实时多媒体应用,包括实时的音视频通讯,视频会议等。

       WebRTC项目是由Gooogle成立开发的,后来开源并推动成为HTML5的技术标准之一。

WebRTC的基本架构:

WebRTC主要包含如下组成部份:

(1)Web API

      面向应用开发者的WebRTC标准APIJavascript),使开发者能够容易地开发出类似于网络视频聊天的web应用,最新的标准化进程可以查看这里。

这些API可分成Network Stream API RTCPeerConnectionPeer-to-peer Data API三类:

Network Stream API

MediaStreamMediaStream用来表示一个媒体数据流。

MediaStreamTrack:在浏览器中表示一个媒体源。

RTCPeerConnection: 一个RTCPeer Connection允许用户在两个浏览器之间直接通讯。

RTCIceCandidate :表示一个ICE协议的候选者。

RTCIceServer:表示一个ICE Server

DataChannel:数据通道( DataChannel)接口表示一个在两个节点之间的双向的数据通道

(2)Native C++ API

      C++ API协议层,提供给浏览器开发厂商使用,使用其容易实现WebRTC标准的Web API,抽象地对数字信号过程进行处理。

 (3)Transport / Session

传输层,WebRTC和视频一样,采用成熟的RTP和RTCP协议。

会话层组件采用了libjingle库的部分组件实现。

RTP Stack协议栈:Real Time Protocol

STUN/ICE:可以通过STUNICE组件来建立不同类型网络间的呼叫连接

Session Management:一个抽象的会话层,提供会话建立和管理功能。该层协议留给应用开发者自定义实现。WebRTC没有规定信令层的规范,这部份有开发都自己选择或定义。

(4)VoiceEngine

        音频引擎是包含一系列音频多媒体处理的框架,包括从音频采集卡到网络传输端等整个解决方案

iSAC:Internet Speech Audio CodeC,WebRTC音频引擎的默认的编解码器。

iLBC:Internet Low Bitrate Codec,VoIP音频流的窄带语音编解码器

SOLO:是由声网Agora自主研发的一款面向不稳定网络的音频编解码器,这个音频编解码器也是开源的。它也兼容WebRTC协议

随着WebRTC的应用,会有越来越多的音频编解码器对其进行支持。

NetEQ for Voice:针对音频软件实现的语音信号处理元件。NetEQ算法:自适应抖动控制算法以及语音包丢失隐藏算法。使其能够快速且高解析度地适应不断变化的网络环境,确保音质优美且缓冲延迟最小。GIPS公司独步天下的技术,能够有效的处理由于网络抖动和语音包丢失时候对语音质量产生的影响。

Acoustic Echo Canceler (AEC):回声消除器是一个基于软件的信号处理元件,能实时的去除mic采集到的回声

Noise Reduction (NR):噪声抑制也是一个基于软件的信号处理元件,用于消除与相关VoIP的某些类型的背景噪声

(5)VideoEngine

        VideoEngine是包含一系列视频处理的整体框架,从摄像头采集视频到视频信息网络传输再到视频显示整个完整过程的解决方案。

VP8/VP9:视频图像编解码器,是WebRTC视频引擎的默认的编解码器一般为VP8,VP9是Google基于原VP8升级开发的。目前也有很多浏览器开始原生支持。

H.264/H.265:是视频编解码的国际标准,后被纳入WebRTC标准中。

Video Jitter Buffer:视频抖动缓冲器,可以降低由于视频抖动和视频信息包丢失带来的不良影响。

Image enhancements:图像质量增强模块,对网络摄像头采集到的图像进行处理,包括明暗度检测、颜色增强、降噪处理等功能,用来提升视频质量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值