实时全互动直播 毫秒延迟&多人连麦

61
实时全互动直播 毫秒延迟 & 多人连麦 陶思明 CTO

Transcript of 实时全互动直播 毫秒延迟&多人连麦

Page 1: 实时全互动直播 毫秒延迟&多人连麦

实时全互动直播�

毫秒延迟 & 多人连麦

陶思明 CTO

Page 2: 实时全互动直播 毫秒延迟&多人连麦

05年开始做网络音视频通话技术研究

“骨灰级”直播、实时互动技术专家

对音视频通信技术实践、通信网络架构部署有些理解

曾任YY技术委员会主席,全面负责整体技术架构、流媒体、点播直播等

后来加入声网Agora.io

Page 3: 实时全互动直播 毫秒延迟&多人连麦

问题1: 还要不要搞直播?

Page 4: 实时全互动直播 毫秒延迟&多人连麦
Page 5: 实时全互动直播 毫秒延迟&多人连麦

泛娱乐直播

秀场

游戏

素人

垂直直播

教育直播

电商直播

音乐直播

财经直播

体育直播

语音直播

新闻直播

格局已定,大浪淘沙

Page 6: 实时全互动直播 毫秒延迟&多人连麦

你熟悉的泛娱乐直播

Page 7: 实时全互动直播 毫秒延迟&多人连麦

教育直播

Page 8: 实时全互动直播 毫秒延迟&多人连麦

电商直播

Page 9: 实时全互动直播 毫秒延迟&多人连麦

双人辩论直播

Page 10: 实时全互动直播 毫秒延迟&多人连麦

会议讨论直播

Page 11: 实时全互动直播 毫秒延迟&多人连麦

超低延迟

多人语音连麦

多人视频连麦

实时全互动直播

Page 12: 实时全互动直播 毫秒延迟&多人连麦

多人视频

Page 13: 实时全互动直播 毫秒延迟&多人连麦
Page 14: 实时全互动直播 毫秒延迟&多人连麦

实时全互动直播

互动更强 粘性更高 变现更有力

Page 15: 实时全互动直播 毫秒延迟&多人连麦

问题2: 多人连麦的全互动直播怎么搞?

Page 16: 实时全互动直播 毫秒延迟&多人连麦

① 没做过直播的公司:先做出来不全互动的,然后再说

② 做过直播的公司:基于现在不实时互动的,改一个出来

Page 17: 实时全互动直播 毫秒延迟&多人连麦

① 不实时不互动的直播

Page 18: 实时全互动直播 毫秒延迟&多人连麦

首先,搞定主播端的上行,和观众端的下行

Page 19: 实时全互动直播 毫秒延迟&多人连麦

然后,搞定流分发传统TCP

Page 20: 实时全互动直播 毫秒延迟&多人连麦

② 基于RTMP+TCP,改一个双人连麦出来

先直接搞两路上行,两个主播同时推流?

Page 21: 实时全互动直播 毫秒延迟&多人连麦

TCP

Page 22: 实时全互动直播 毫秒延迟&多人连麦

③  基于 P2P + TCP,改一个可以双人连麦

Page 23: 实时全互动直播 毫秒延迟&多人连麦

TCP

Page 24: 实时全互动直播 毫秒延迟&多人连麦

才5%丢包就卡成翔!

高峰连麦连不上!

聊得正high就断了!

手机破没法连!

主播观众老抢话!

你这个骗子,这样只能双人连麦说好的7人呢?

Page 25: 实时全互动直播 毫秒延迟&多人连麦

TCP stream 要改成 UDP!!!

实时超低延迟

多人连麦互动

Page 26: 实时全互动直播 毫秒延迟&多人连麦

为什么非改不可?�

a) 多人连麦互动的痛点“低延迟”,150ms以内延迟体验才ok

b) TCP是一种可靠的传输协议,延迟大,实时完全无法保证

C)所以要改成基于UDP,一个字 “快”,满足实时需求,互动才带感

Page 27: 实时全互动直播 毫秒延迟&多人连麦

0%丢包

Page 28: 实时全互动直播 毫秒延迟&多人连麦

10%丢包

Page 29: 实时全互动直播 毫秒延迟&多人连麦

20%丢包

Page 30: 实时全互动直播 毫秒延迟&多人连麦

30%丢包

Page 31: 实时全互动直播 毫秒延迟&多人连麦

800k带宽

Page 32: 实时全互动直播 毫秒延迟&多人连麦

500k带宽

Page 33: 实时全互动直播 毫秒延迟&多人连麦

300k带宽

Page 34: 实时全互动直播 毫秒延迟&多人连麦

TCP SD-RTN 实时网

延迟主播到观众

一般5-20秒(RTMP) 主播到观众

一般200-600毫秒,最多小于<2秒

互动单向

1个主播,N个观众多向

最多7个主播,N个观众

连麦 不支持 可语音连麦或视频连麦

丢包对抗无丢包对抗

网络丢包30%时,完全卡住超强丢包对抗,

网络丢包30%时,画面流畅

Page 35: 实时全互动直播 毫秒延迟&多人连麦

端到端平均延时76ms

延时 <150ms 平均占80.6%

*某app 8月20日至9月1日数据

Page 36: 实时全互动直播 毫秒延迟&多人连麦

剩下还有9个难点

1.  全网改造UDP

2.  跨运营商传输

3.  跨国传输

4.  弱网抗丢包

5.  机型适配

6.  双流策略,视窗切换

7.  多人连麦细节

8.  稳定高

9.  第三方定制功能

Page 37: 实时全互动直播 毫秒延迟&多人连麦

难点1 全网改造UDP

•  改造已有TCP

•  改造5个平台下客户端的实现

•  实现传输控制协议和信令协议

•  基于UDP重新实现信令控制

Page 38: 实时全互动直播 毫秒延迟&多人连麦

难点2 跨运营商传输

质量没好过

Page 39: 实时全互动直播 毫秒延迟&多人连麦

Agora机房的smokeping真实数据

第一张图是东北某联通机房到西北某电信机房

Page 40: 实时全互动直播 毫秒延迟&多人连麦

Agora机房的smokeping真实数据

第二张图是东北某联通机房到西北某联通机房

Page 41: 实时全互动直播 毫秒延迟&多人连麦
Page 42: 实时全互动直播 毫秒延迟&多人连麦

直播场景下,架构成本过高

Page 43: 实时全互动直播 毫秒延迟&多人连麦

单线接入,多线路由

Page 44: 实时全互动直播 毫秒延迟&多人连麦

难点3 跨国传输

根据骨干网拓扑结构,能够归纳出每个地区的进出口机房

大陆:有国际专线带宽

东南亚:香港、新加坡,日本,韩国

北美:西海岸加州地区,东海岸纽约,南部迈阿密

南美:圣保罗

澳洲:悉尼

欧洲:西部法兰克福,巴黎,阿姆斯特丹 等等

Page 45: 实时全互动直播 毫秒延迟&多人连麦

根据骨干网拓扑结构,再归纳出两两地区之间的路由机房

大陆与亚洲其他国家的路由节点:香港

大陆与北美的路由节点:香港、东京

大陆与欧洲的路由节点:香港

北美与南美的路由节点:迈阿密 等等

Page 46: 实时全互动直播 毫秒延迟&多人连麦
Page 47: 实时全互动直播 毫秒延迟&多人连麦

难点4 弱网抗丢包

WIFI信号互相干扰

局域网内有其他程序抢占带宽

2G/3G带宽不够

距离接入的路由器或者基站过远

小运营商

Page 48: 实时全互动直播 毫秒延迟&多人连麦

有的是均匀丢包

有的是突发burst丢包

有的是周期性丢包

有的是不丢包但是抖动非常大

Page 49: 实时全互动直播 毫秒延迟&多人连麦

如何对抗丢包

•  对抗丢包有一些经典手段:

•  FEC

•  丢包重传

•  一包多帧

•  etc.

Page 50: 实时全互动直播 毫秒延迟&多人连麦

丢包<1% 占94.1%

*某app 8月20日至9月1日数据

Page 51: 实时全互动直播 毫秒延迟&多人连麦

音效问题(回声噪音)

硬件问题(发烫发热)

难点5 用户终端机型适配

纯手工适配+公版统配算法

硬件编解码+服务器转码

Page 52: 实时全互动直播 毫秒延迟&多人连麦

难点6 双流策略 大小窗切换

Page 53: 实时全互动直播 毫秒延迟&多人连麦

•  观众与主播的无缝切换,7人连麦

•  跨平台互通:5个平台合适的视频分辨率与编解码性能各不相同

•  音视频录制:工信部要求直播业务需要保存最近6个月以上的录像

•  旁路直播:直播的视频流支持分享到微信朋友圈、QQ群等

难点7 多人连麦

Page 54: 实时全互动直播 毫秒延迟&多人连麦

难点8 稳定高可用

几万人同时在线?几十万?几百万?

如何保证至少4个9(99.99%)可用性?

Page 55: 实时全互动直播 毫秒延迟&多人连麦

难点9 第三方定制功能

美颜 / 滤镜/换脸

Page 56: 实时全互动直播 毫秒延迟&多人连麦

1周?还是1年?

Page 57: 实时全互动直播 毫秒延迟&多人连麦
Page 58: 实时全互动直播 毫秒延迟&多人连麦

部署实时专有虚拟通信网 SD-RTN �Software Defined Realtime Network

Page 59: 实时全互动直播 毫秒延迟&多人连麦

创始人 赵斌先生 20年通信和互联网经验

Webex创始工程师 市值最高$32亿,YY CTO 市值最高$50亿

2014年创立声网Agora.io,开创实时云通信。

前Apple 视频核心算法工程师 前Vidyo全球高级产品总监 前YY技术委员会主席 前YY音频流媒体平台专家 前YY音频流媒体平台专家

团队 10 有N名国内最早从事直播行业技术的骨灰级人物

经验,超过Skype,并拥有20 国际专利

Page 60: 实时全互动直播 毫秒延迟&多人连麦

x

x

x

x

Page 61: 实时全互动直播 毫秒延迟&多人连麦