备注:初学,整理一下资料~~
WebRTC,网页实时通信,Web Real-Time Communication的缩写,是一个支持网页浏览器进行实时语音通话或视频聊天的技术,是谷歌2010年以6820万美元收购Global IP Solutions公司而获得的一项技术。
WebRTC提供了实时音视频的核心技术,包括音视频的采集、编解码、网络传输、显示等功能,并且还支持跨平台:windows,linux,mac,android。
兼容性
目前Chrome、Firefox、Opera已支持。具体可查看:http://caniuse.com/#search=webrtc
安全性
这里有几个实时通信应用可以出现的安全性问题:
- 未加密的媒体数据流可以会在浏览器或通信途中被获取。
- 应用可能会在用户不知情的情况下记录视频和其它信息。
- 恶意软件或病毒可能被安装在一个不起眼的插件或应用中。
WebRTC通过各种特性避免了这些问题:
- WebRTC 实现很多用户安全协议,比如DTLS和SRTP。
- 对数据流和信号量进行编码加密。
- 摄像头和手机必须通过严格的授权,只有在显示用户界面的时候才能调用。
WebRTC API:
- MediaStream (别名 getUserMedia) // 取得数据流,比如从摄像头和手机中获取
- RTCPeerConnection // 音频和视频通话,设备加密和带宽管理
- RTCDataChannel // 点对点通信
现成的WebRTC库或框架
webRTC.io: https://github.com/webRTC-io/webRTC.io
SimpleWebRTC:https://github.com/andyet/SimpleWebRTC
EasyRTC:https://github.com/priologic/easyrtc
推荐阅读
- Capturing Audio & Video in HTML5 http://www.html5rocks.com/zh/tutorials/getusermedia/intro/#toc-webaudio-api
- WebRTC Google官方教程 https://codelabs.developers.google.com/codelabs/webrtc-web/#0
- WebRTC API (MDN文档) https://developer.mozilla.org/zh-CN/docs/Web/API/WebRTC_API
- WebRTC(by 阮一峰大神) http://javascript.ruanyifeng.com/htmlapi/webrtc.html
本文作者:子匠_Zijor,转载请注明出处:http://www.dengzhr.com/js/1035