什么是webrtc
webrtc是实时通讯的标准方式之一,它包含了两种技术:VoIP语音通话和web开发.
图一:webrtc技术处于VoIP与web之间
VoIP是基于ip的语音通话,通过网络连接来传输媒体流(通常是音频和视屏流).VoIP语音通讯一直处于自己生态系统的孤岛上,直到webrtc推出后,通过蓬勃发展的互联网我们可以通过浏览器相互连接.
webrtc使用VoIP来连接我们的浏览器,网站和移动端app。webrtc通过浏览器实现了简约的JavaScript的api接口,是HTML5规范的一部分。这意味着每个web开发人员都可以在他们的网站或者web应用上使用实时通讯的功能。
WebRtc有两个方面的优势:
- 免费
- 由VoIP发展而来
它们共同将通讯服务的准入门槛降低,但又不使用旧的案例技术来实现.
webrtc是什么
Webrtc这个术语有一定的误导性,它意味着两种不同的东西:
- webrtc协议规范
- webrtc开源项目
这两种概念在大多数时间是可以互换的,最重要的是你能区别两者的区别
1. webrtc协议规范
webrtc是W3C和IETF的标准规范.
规范处理:
- 数据传输协议- 通过网络传输,两个webrtc应用能够进行交互
- 浏览器本身的api接口 - 封装Webrtc暴露出javascript接口
webrtc1.0标准化已经在最后的审批阶段了。这已经持续了1年之久,很多的第三方软件都忽略webrtc的不便之处转而开始采用其产品.当然,在不停地浏览器间的webrtc的实现方式有差异,但是这种差异随着浏览器的发展将会慢慢弥合。
2.webrtc开源项目
webrtc同样也是一个开源项目,当google第一次公布webrtc时,他只是一个在它自己网站上的开源项目。
google明确表示他们将webrtc标准化并将其嵌入到浏览器中,最后,他们开源了代码并将置以最宽泛的开源协议。
作为一个开源项目,webrtc是一个非常强大的项目使得任何人都可以在遵循webrtc协议规范的情形下来使用它。
尽管有其他尝试提供完整的webrtc开源栈,但还是以google开源的项目作为最主要的选择。
免费
webrtc在每个方面都是免费的
- 处于最宽泛的BSD开源协议的的开源项目包.在过去类似的技术是需要购买或者更严格的license协议,这对许多公司来来说都是不适用的
- 它提供免费的编解码器并且不需要版权付费和专利许可证.编解码器通常都是需要付费使用,专利使用费和基于使用数量的版权费.每个季度的许可费和使用量费用的重新计算都需要花费一笔不菲的资金.
允许开发者重新规划webrtc和其包含的组件:
- 将其移植带有流媒体服务的操作系统或者环境中是可行的
- 在设备数量多和性能低的机器上部署使用
- 剥离webrtc的模块单独使用,特别是webrtc的回声消除和编解码实现。
小结
最重要的是记住webrtc是免费的,它有很多商业的产品,服务和供需市场,这意味着可以减少风险,开发者的花费和从市场获得服务的时间。