破解实时互动直播难点超低延迟与连麦陶思明CTO05年开始做网络音视频通话技术研究“骨灰级”直播、实时互动技术专家对音视频通信技术实践、通信网络架构部署有些理解曾任YY技术委员会主席,全面负责整体技术架构、流媒体、点播直播等后来加入声网Agora.io到底搞不搞直播?实时互动直播怎么搞?如何破解实时互动直播主要难点?问题1:到底搞不搞直播?秀场直播不是新玩意移动直播App,无差异化直播回归商业本质新闻直播游戏直播教育直播体育直播电商直播演唱会直播VR直播多场景直播对真实的渴望对参与的渴望搞不搞直播搞!怎么搞?搞和场景紧密结合的实时互动直播g'@支持最多6个主播实时互动大小流和对话视窗可以随时切换。想看谁就看谁。问题2:实时互动直播怎么搞?①没做过直播的公司:先做出来不实时互动的,然后再说②做过直播的公司:基于现在不实时互动的,改一个出来①不实时不互动的直播首先,搞定主播端的上行,和观众端的下行然后,搞定流分发CDN-VDN②基于RTMP+CDN,改一个实时互动直播出来先直接搞两路上行,两个主播同时推流?提问:“我们用RTMP做的直播产品,观众提问主播回答。现在经常是观众还没有问,主播回答的声音已经出来了”回答:TCPstream要改成UDP!!!为什么非改不可?•a)TCP是一种可靠的传输协议。但是太靠谱了,实时性不够。•b)UDP是不可靠的,但能满足实时性传输。•c)几乎所有的互联网链路都会丢包,特别是移动互联网丢包率TCP延时0%400ms左右30%10分钟以上50%容易断开TCP的延时从几百毫秒到几十分钟,甚至断开在同样的链路上,UDP的延时可以从几十毫秒到一两秒改成UDP之后,还有12个难点直播质量×51.全网改造UDP2.跨运营商传输3.跨国传输4.用户终端网络差5.用户终端设备差直播功能×56.观众与主播的切换7.多主播的画面分布选择8.跨平台互通9.音视频录制旁路直播10.旁路直播11.几万人同时在线?几十万?几百万?直播性能×212.如何保证至少4个9(99.99%)可用性?破解实时互动直播难点难点1全网改造UDP•改造已有CDN•改造5个平台下客户端的实现•实现传输控制协议和信令协议•基于UDP重新实现信令控制难点2跨运营商传输质量没好过Agora机房的smokeping真实数据第一张图是东北某联通机房到西北某电信机房Agora机房的smokeping真实数据第二张图是东北某联通机房到西北某联通机房CTEL用户..._._,__回阳市•cucc用户...,\/,.CGTICGTICGTICG飞!CGTICGTICGTICGTICGTICGTICHlICGTICGTICGTcucc线路CTEL线路多线机房直播场景下,架构成本过高单线接入,多线路由难点3跨国传输根据骨干网拓扑结构,能够归纳出每个地区的进出口机房大陆:有国际专线带宽东南亚:香港、新加坡,日本,韩国北美:西海岸加州地区,东海岸纽约,南部迈阿密南美:圣保罗澳洲:悉尼欧洲:西部法兰克福,巴黎,阿姆斯特丹等等根据骨干网拓扑结构,再归纳出两两地区之间的路由机房大陆与亚洲其他国家的路由节点:香港大陆与北美的路由节点:香港、东京大陆与欧洲的路由节点:香港北美与南美的路由节点:迈阿密等等·i}.N费WJ『,'、、、、.-..•V,萃,/6、r,23·•.i'/§雯.”’4亏-,电馆”协gAg、言住罩』草莓吁’k注烟部队事,、、难点4用户终端网络差WIFI信号互相干扰局域网内有其他程序抢占带宽2G/3G带宽不够距离接入的路由器或者基站过远小运营商有的是均匀丢包有的是突发burst丢包有的是周期性丢包有的是不丢包但是抖动非常大如何对抗丢包•对抗丢包有一些经典手段:•FEC•丢包重传•一包多帧•etc.音效问题(回声噪音)硬件问题(发烫发热)难点5用户终端设备差纯手工适配+公版统配算法硬件编解码+服务器转码难点6多主播的画面分布选择•观众与主播的切换•跨平台互通:5个平台合适的视频分辨率与编解码性能各不相同•音视频录制:工信部要求直播业务需要保存最近6个月以上的录像•旁路直播:直播的视频流支持分享到微信朋友圈、QQ群等难点7-10直播功能难点11-12直播性能11.几万人同时在线?几十万?几百万?12.如何保证至少4个9(99.99%)可用性?1周?还是1年?自建全球虚拟通信网创始人赵斌先生20年通信和互联网经验Webex创始工程师市值最高$32亿,YYCTO市值最高$50亿2014年创立声网Agora.io,开创实时云通信。前Apple视频核心算法工程师前Vidyo全球高级产品总监前YY技术委员会主席前YY音频流媒体平台专家前YY音频流媒体平台专家团队平均行业经验10年以上,有N名国内最早从事直播行业技术的骨灰级人物拥有每年支持数千亿分钟音视频通话服务经验,超过Skype,并拥有20+国际专利小米陌陌洋葱TV觅秘直播易我们在B07