过早客
  • 首页
  • 节点
  • 成员
  • 广告投放
  • 登录
  • 注册

基于 WebRTC 技术的实时通信服务开发实践

IT技术 • erxuan • 发表于 8 年前 • 最后回复来自 cyberniuniu • 8 年前

△WebRTC内部结构

△WebRTC内部结构

WebRTC 的前世今生

什么是 WebRTC

2010年5月,Google 花费6820万美元收购拥有编解码、回声消除等技术的 GIPS 公司。之后谷歌开源了 GIPS 的技术,与相关机构 IETF 和 W3C 制定行业标准,组成了现有的 WebRTC 项目。

WebRTC 全称 Web Real-Time Communication。它并不是单一的协议, 包含了媒体、加密、传输层等在内的多个协议标准以及一套基于 JavaScript 的 API。通过简单易用的 JavaScript API ,在不安装任何插件的情况下,让浏览器拥有了 P2P音视频和数据分享的能力。

同时WebRTC 并不是一个孤立的协议,它拥有灵活的信令,可以便捷的对接现有的SIP 和电话网络的系统。

WebRTC 具有的优势

成立UPRTC项目前,又拍云经过多重调研和考虑,选择了 WebRTC,主要有三个原因:

  1. WebRTC 是开源、 免专利费的项目, 大大节省了开发时间和成本;
  2. WebRTC 由 Google 主导, 技术非常先进;
  3. Safari 等浏览器以及其他终端逐渐加强对 WebRTC 技术的支持。

全文阅读:http://support.upyun.com/hc/kb/article/1068060/

加入收藏 新浪微博 分享到微信 ❤赞 2535 次点击 2 人赞 0 人收藏

打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

共收到12条回复
xiaohei 8 年前 #1 赞 0

又一次抓到分享干货的楼主一只

mzlogin 8 年前 #2 赞 1

音频处理时占用 CPU 相当高……参与过一个实时语音的项目,用 WebRTC + Kurento Media Server,12 核的 CPU 基本在三四百同时在线就满了,一个小组内参与语音的人数超过 6 个音质就下降明显,后来不得已切回用 C++ 手撸轮子,只用 WebRTC 里的 APM 在客户端做语音处理,同样配置的服务器能负载的在线用户数咔咔翻了几番……

gocome 8 年前 #3 赞 0

@mzlogin 那这个主要还是Kurento的问题吧?

mzlogin 8 年前 #4 赞 0

@gocome 可以这么说,不过也没找见更好的实现啊,有没有推荐? :P

gocome 8 年前 #5 赞 1

@mzlogin 没有真正做过,不知道有什么更好的。
一开始WebRTC目的是直接端到端,不用服务器,是吧?
中间感觉可以用socket.io来做中继转发,C++从轮子开始,这个搞大了……

Powerofwalking 8 年前 #6 赞 0

感谢,,正在找这方面的资料

jorryyang 8 年前 #7 赞 0

哈哈哈,三年前做过这个

mzlogin 8 年前 #8 赞 0

@gocome 在用户规模不太大的时候,C++ 轮子模型倒是并不复杂,主要就是用户语音与命令通道分组维护,组内语音合成分发,代码量挺小的。

cyberniuniu 8 年前 #9 赞 0

我现在也正在做这个

sdsdppp 8 年前 #10 赞 0

@jorryyang 目前也在做这个,留个联系方式吧

sdsdppp 8 年前 #11 赞 0

@cyberniuniu 留个联系方式吧~

cyberniuniu 8 年前 #12 赞 0

目前我已经实现了一个网络会议室最多12个参会者同时在线,音视频质量基本ok,同时支持本地视频共享(会议广播)、本地桌面屏幕共享(会议广播)。

请绑定手机号后,再发言,点击此处
Guozaoke.com—源自武汉的高端交流分享社区
相关主题
iOS 过早客没有数据,大佬们求教!
GPT-5
寻有K12教育行业软件开发经验的同学合作
你们都用哪些AI工具,求分享下~
过早客flutter版来了
亲测,鸿蒙开发奖励到手了
感觉gemini已经是一骑绝尘
分享一个拥有很多好看壁纸的插件
作为后端开发工程师,你们有中途转向机器学习/深度学习的吗?
写了个过早客的暗色插件,个人感觉很好用嘿嘿

过早客微信公众号:guozaoke • 过早客新浪微博:@过早客 • 广告投放合作微信:fullygroup50 鄂ICP备2021016276号-2 • 鄂公网安备42018502001446号