全民直播时代——基于WebRTC开发实时通信服务

内容来源:2017年7月8日,又拍云多媒体开发资深工程师刘博在“不止云计算,云时代还有哪些宝典”进行《云通信 - 基于 WebRTC 技术的实时通信服务开发实践》演讲分享。IT 大咖说(ID:itdakashuo)作为独家视频合作方,经主办方和讲者审阅授权发布。

阅读字数:1126 | 4分钟阅读

获取嘉宾演讲视频回放及PPT,请点击:http://t.cn/EvLnWav

摘要

本次分享基于 WEBRTC 技术的实时通信服务的开发经验,希望通过这次分享能让大家对这方面更有兴趣。

什么是互动直播?

互动直播是多路音视频以及数据实时通信的解决方案。

首先看一下我们又拍云自己的应用场景。又拍云是由杭州研发总部加上北京、上海、广州等多家分公司组成的。我们的管理层每周一上午有个每周例会,我们很需要一个简单可靠的远程会议系统。

在过去,我们用的是传统的电话会议硬件,复杂难用,价格不便宜,而且效果也不理想。

现在,我们只需要一台笔记本电脑外加一个高清摄像头就可以了,不需要任何配置、安装任何插件。

互动直播的特点

互动直播和传统直播相比的本质的区别是延时。

与传统的直播相比,互动直播赋予了参与直播的每一个成员互动交流的能力。因此,也对实时性、抗回声要求更高。

在视频会议、远程教育、远程咨询、视频社交、互动游戏等很多场景往往只能选择实时性更高的互动直播技术。

为什么选择 WEBRTC?

WebRTC是一个开源,免专利费的项目,大大节省了我们的开发时间成本。

WebRTC由Google 主导,技术非常先进。

各大浏览器以及终端逐渐加大对 WebRTC 技术的支持。

WEBRTC OVERVIEW

WebRTC全称是 Web Real-Time Communication。WebRTC 并不是一个单一的协议,而是一个标准,包含一堆协议和API。

WebRTC通过提供简单易用的JavaScript APIs让浏览器拥有了 P2P音视频和数据分享的能力,同时不需要安装任何插件。

WEBRTC STANDARDS AND HISTORY

2010年5月,Google花了$68.2million收购了GIPS,一年后Google就开源了WebRTC项目。

WEBRTCW3C Working Group:浏览器API;

RTCWEBIETF Working Group:协议、数据格式、安全、P2P等。

WebRTC并不是一个孤立的协议。起初是为了浏览器与浏览器之间实时通信,也可以通过信令协议对接现有的SIP客户端、PSTN 网络、移动端等。

WEBRTC的核心组成

音视频引擎:OPUS、VP8/VP9、H264;

传输层协议:底层传输协议为UDP;

媒体协议:SRTP/SRTCP;

数据协议:DTLS/SCTP;

P2P内网穿透:STUN/TURN/ICE/Trickle ICE;

信令与SDP协商:HTTP/WebSocket/SIP. Offer Answer模型。

我们的实时通信底层平台UPRTC

传统的 WebRTC 应用模式是 P2P 的,我们改造成服务器中转的模式。

完全分布式系统, 部署到全国所有边缘节点,通过我们的内部加速网络加速。

网络拥塞自适应控制, 较强的弱网适应能力。

针对底层开源组件进行优化改造,支持高并发。

灵活高效的业务信令,支持对敏感信令进行鉴权。

utun解决跨地区,跨ISP延迟高且不稳定等网络问题。

覆盖200多个边缘节点,4000多台服务器;覆盖3个大运营商,2个小运营商。

uprtc实现媒体接入,接入Web端与移动端。

基于我们底层 UPRTC 平台的第一个项目——上会

我们选用的编码格式H.264 + Opus。修复WebRTC内核 iOS 端有音频处理过度消耗CPU的BUG,以及修复WebRTC的core音视频不同步的BUG。Android端H.264编码不支持高通以外芯片硬解码。客户端解码能力有限,总会话人数需要控制在8人以内。服务器端需加入码率自适应算法,自动根据参与人数控制总带宽在2Mbps以内。美颜、滤镜接入会增加处理延时,所以对此性能要求非常高。

我今天的分享就到这里,谢谢大家!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,376评论 6 491
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,126评论 2 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,966评论 0 347
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,432评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,519评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,792评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,933评论 3 406
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,701评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,143评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,488评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,626评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,292评论 4 329
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,896评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,742评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,977评论 1 265
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,324评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,494评论 2 348

推荐阅读更多精彩内容

  • 前言: WebRTC,名称源自网页实时通信(Web Real-Time Communication)的缩写,简而言...
    涂耀辉阅读 50,660评论 134 430
  • 夏天,温度迅速爬过了四十多度,太阳和气温约定好了同时从大地的万物上汲取水分,连绿豆大的小石子也不放过。大量的水分通...
    云尚三阅读 195评论 0 2
  • 昨天晚上发生了一件不幸的事情,我的手机在回学校的路上被小偷偷了。更加不幸的是我们寝室的老二手机也丢了。真的是点背不...
    阿历克斯奇阅读 306评论 0 1
  • 如果安静的你是风,你是否可以带走秋天的落叶,让树木不能挽留的假象从此消失。如果你是夏季的烈日,能否照暖这世界...
    唐敐阅读 668评论 3 7
  • 无感 文/江川 我不想苟同 苟同于华丽的文章 无论那些叽喳着的 是麻雀还是鹦鹉 他们嘈杂着相互赞美 欣赏着不同名字...
    不见江川阅读 136评论 0 1