WebRTC,名称源自网页实时通信(Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的API。
WebRTC 项目需要做以下几件事情:
1、取到音频、视频或其它数据的数据流。
2、得到网络信息,如IP地址和端口,通过网络和其它WebRTC客户端交换数据,解决防火墙的NAT转发的问题。
3、协调信号来报告错误,启动或关闭会话。
4、交换媒体和客户端信息,处理如分辨率和编码解码器问题。
5、数据流通信。
简而言之,就是音视频数据采集->编码->发送->接收->解码->播放。
对客户端调用来说主要就是做四件事情:
1、设置音视频远端地址和端口(包括远端音视频的RTP、RTCP端口和本地接收音视频的RTP、RTCP端口)。
2、启动音视频数据的发送。
3、启动音视频数据的接收。
4、启动音视频数据的播放。
WebRTC有以下三个API:
· MediaStream: 取得数据流,比如从摄像头和手机中获取。
· RTCPeerConnection: 音频和视频通话,设备加密和带宽管理。
· RTCDataChannel: 点对点通信。
Webrtc架构图:
参考文献:http://www.gbtags.com/gb/share/3909.htm
http://www.cnblogs.com/lingyunhu/p/4004528.html