周高嵚:秀色直播的技术实践之路
3月17日,ZEGO Meetup 视频直播+的技术实践之道第二期在北京成功举办,现场吸引了满堂的音视频开发人员到场聆听。会上,如预期一样。
齐聚科技创始合伙人 王国良
即构科技资深技术专家和架构师 冼牛
秀色娱乐研发总监 周高嵚
数美联合创始人&CTO 梁堃
直播行业的4位技术大咖,和大家一起畅谈视频直播的技术与未来。
周高嵚老师结合秀色娱乐这几年的实践和我们分享了《秀色直播的技术实践之路》。
秀色直播的自我定位
秀色娱乐研发总监 周高嵚首先,他分享了秀色娱乐对于直播行业的认识和自我定位。秀色娱乐认为直播行业具有海洋生态的典型特征:纬度越低,生物种类越多;纬度越高,生物种群越大。这里“生物种类”类比于直播的“内容类型和用户需求”,“生物种群”类比于直播的“内容影响力和用户规模”。
先说中纬度的这些直播平台的特征,首先是具备有一定的体量;其次是有着比较成熟的打法,不管是在产品研发、内容运营还是市场推广上,都有一套完整、成熟的体系。
高纬度的直播平台,肯定也是有成熟的打法的。除此之外,它们的体量更大,在平台的社会影响力、资本巨头的支持、流量入口等方面都有不可替代的优势。
低纬度则更多的是各种创新和尝试,尝试一些新的内容、模式,比如抓娃娃、狼人杀、政务直播等。低纬度的平台大部分体量较小,但是一旦模式验证成功,很快就会向更高的纬度移动。
秀色娱乐对自身的定位是在中纬度。基于对直播行业现状的认识和对自身的定位,秀色娱乐对未来的战略规划是这样的:
第一,把自己做大做强,尽量往高纬度靠近,这是所有平台想做的事情。
第二,在秀色擅长的中纬度地区,做横向发展。利用已有的在产品研发、内部运营、市场推广上的经验积累去运营多个平台。目前,秀色娱乐旗下除秀色直播外,还拥有乐嗨秀场、嗨秀秀场、红人直播以及蜜疯直播等多个平台。
第三,关注低纬度地区。把好的创意、玩法吸收过来,丰富已有平台的内容。
以上是公司层面的大的战略,而整个研发体系内所进行的产品功能开发、技术选型以及和第三方的技术合作等等技术实践,都是服务于公司战略的。
秀色技术实践道路回顾
秀色娱乐是在2013年踏入直播领域的。当时因为大家都还在摸索,所以整个行业的技术发展水平都比较低,可利用的资源不多;而秀色团队在视频领域也没有很深的积累,所以从0到1这一步走得还是比较艰难的。现在来看,最初的这个架构是特别简单的,如果今天大家去搭这么一套东西,基于一些成型的开源框架或者第三方sdk,快的话两三天,慢的话一周内,肯定都是可以搞定的。
秀色直播早期技术架构当时市面上还没有视频云的厂家,提供CDN的厂商有几家——网宿、帝联、蓝汛。分发的事情由CDN去解决,秀色自己主要解决的是推流和拉流的问题。
推流是在PC端,拉流则包括iOS、安卓和web。PC端推流是基于开源框架ffmpeg做的;iOS和安卓的拉流则是在移植了ffmpeg的基础上写的播放器; Web端拉流相对简单一些,有现成的Flash可以用。在2013年的时候,有限的几个直播平台,不管是播还是看,主要是以PC端/Web端为主。当时智能手机处于快速普及的状态,秀色娱乐也是感受到了这一发展趋势,比较早地推出了移动端看直播的产品。
当时还没有手机直播,因为手机性能、移动网络带宽等各方面客观条件不具备。手机直播实际上是2015年才逐渐火起来的。
最初的方案做出来后只是解决了从0到1的问题,可以播可以看了,但是体验上和主流平台的差距还是很大的,所以还需要持续跟进、改进、前进。
秀色直播当前技术架构上图是秀色当前的技术架构,相比于之前的架构有了很大的变化。周高嵚挑了其中几个比较重要的点给我们作了讲解。
1、防盗链
在平台早期的时候,大家都没有防盗链的概念。但是有一天突然CDN上的流量特别大,经过排查发现是有人盗链去直播了一场足球比赛。这就引出了防盗链的问题。
未开启防盗链的情况下,第三方拿到推拉流域名,根据规则随便拼上流名就可以使用了,这样很容易就被盗用。解决这一问题需要直播平台和CDN厂商配合解决,解决的方式也很多种,现在用的比较多的是基于Token的方式。在流地址中加入Token加密串,CDN收到请求时会校验Token加密串来判断流地址的合法性;另外也可以通过带上加密后的时间戳,来限制流地址的时效性(比如只有十分钟有效时间)。具体Token的生成和校验规则、时间戳的加解密规则,可以由双方约定。这个对推流地址、拉流地址都可以做。
2、视频秒开
最早的时候绝大部分直播app都是没有秒开功能的,用户从进入直播间到看到视频,通常都会有一小段等待时间,体验比较差。现在的直播app基本都已经支持视频秒开了。
视频秒开需要用户端播放器和CDN的配合。播放器要能播放出视频的必要条件是拿到关键帧,只有拿到了关键帧才能解码出视频帧数据并且渲染出来。CDN没有缓存功能的情况下,视频秒开是一定不成立的。为什么?比如现在播放器请求这条流,正好请求到关键帧,那没问题;如果请求这条流的时候,关键帧刚刚过去,那就得等到下一个关键帧来了才能播放。要等多久呢?这取决于GOP设置,比如推流的GOP设置的是三秒,就得等接近三秒才能拿到下一个关键帧。
CDN有缓存功能之后,可以缓存从最近的一个关键帧开始的所有帧。播放器请求的时候,它可以把缓存好的缓存从最近的一个关键帧开始的所有帧,以最快的速度传到客户端。因为拿到的第一帧就是关键帧,播放器可以第一时间解码出视频帧数据并渲染出来。
CDN做缓存是视频秒开的必要条件,但并不是充分条件。播放器自身的逻辑也会影响视频画面是否能够快速传达到用户端。有些播放器为了保持播放的流畅性,需要缓存一段时间的数据才开始播放。要保证视频秒开,这个限制则需要去掉。所以说视频秒开是需要CDN和播放器配合完成的一件事情。
3、虚拟视频
虚拟视频的功能非常多,但是最关键的作用还是让人变美。最早主播都是素颜直播,后来一些要求较高的主播会通过化妆、补充房间灯光来提升直播间效果。有了美颜摄像头后,很多主播愿意用。美颜摄像头能提供一定的磨皮和增白效果,但是清晰度相对差一点,而且没法灵活调整磨皮和增白的程度。
虚拟视频软件,逐渐解决了这些问题。最早是通过一些图像处理的滤镜算法、亮度调整、缩放等,实现了磨皮、美白、瘦身等比较基础美颜功能。再往后呢,主播要求越来越高,想眼睛大一点、下巴窄一点等等,都需要虚拟视频软件来解决。另外还有各种脸萌效果,头上加个鹿角、兔耳朵什么的,显得非常可爱。这里面又引入了人脸识别技术、人脸贴纸技术。
4、手机直播
手机直播是2015年开始火起来的,秀色娱乐也很快跟进了,在原来PC端推流的基础上又增加了手机端推流,iOS和安卓。手机直播比较依赖硬编,因为软编发热和耗电比较厉害,对主播是个问题。早期主播基本都用iOS,因为iOS 8.0版就很好地支持了硬编。而安卓手机碎片化太厉害,对硬编的支持难以保证,到比较后期才有主播用一些中高端机型直播。
5、其他
这中间还有一些小的优化,比如推流端和播放器回传必要的数据,通过这些回传的数据可以监控主播直播和用户观看直播的情况和进行必要的优化。另外还有播放器的硬解码等。娃娃机和连麦都是集成了第三方的服务,后面会详细说到。
第三方技术公司合作
除了自研技术外,周高嵚还介绍了秀色和第三方技术服务公司合作的经历。
首先是CDN。大部分的直播平台,哪怕是处在高纬度的,要完全自建CDN也还是比较难的,所以需要依赖CDN厂商。这里有个数字“99.9%”,什么意思呢?从秀色这几年的实践来看,没有哪一家CDN能保证一年365天100%不出问题,这一点和CDN非常复杂的整体技术架构、节点部署、运营商网络情况等因素都有关系。对此,秀色的策略是多备、监控和一键切换。此外,周高嵚还特意提及了智能鉴黄服务。他指出,因为鉴黄对直播来说是刚需,现在很多CDN厂商和视频云公司提供智能鉴黄服务,以及基于智能鉴黄基础上的自动断流功能,但在使用时需要谨慎和稳妥。秀色也在和国内几家顶级的提供智能鉴黄服务的公司在合作,从实际效果上看,准确率确实已经非常高了,但即使有99.9%的准确率,由于总量太大,误报的量也不小。秀色当前的做法是先调用智能鉴黄服务,在此基础上再进行一次人工的确认,以保证对主播的友好体验。
其次是连麦直播技术,秀色的连麦直播技术采用的是即构的方案。周高嵚表示,秀色接入连麦直播技术完全是实际需求驱动的,而不是跟风。秀色采用了对现有业务影响较小的方式接入了连麦,并且尝试了多种功能形式。从秀色实际的数据来看,连麦在丰富内容、增加用户粘性方面确实起到了不小作用。
最后是娃娃机。在租金相当昂贵的各大商场,娃娃机也随处可见,说明娃娃机的需求本身是真实存在的。至于把娃娃机从线下挪到线上,是否能得到市场和用户的认可,或者说怎样一种线上形式能得到用户认可,还需要去尝试。即构科技的一站式服务把娃娃机软硬件、代运营服务都解决了,为秀色减少了试错的成本。
周高嵚表示,采用第三方公司提供的专业技术服务是非常必要的,有利于企业减少试错成本并且快速地跟随市场动态,毕竟企业的人力和时间有限,还有很多业务上的需求需要解决,开放合作是必须的。
未来展望
秀色娱乐一直在持续关注行业内的最新热点,例如连麦、相亲大会、狼人杀、1对1直播、娃娃机、答题等。其中有些已经跟进了,有些还会持续关注。
此外,秀色还在关注一些新技术与直播的结合,例如微信小程序、语音识别、H265、AR、VR、全景声等。
最后,关于直播行业的未来,周高嵚认为,直播行业有着非常好的生态。很多行业最终只能剩下一两家独大的企业,比如熟人社交领域微信QQ以外的基本都倒下了,团购经历百团大战后只剩下美团,出行目前基本就是滴滴了,还有共享单车等等。而直播行业一直是百家争鸣、百花齐放。这样的生态给了专业技术服务商更多的机会,反过来专业的技术服务也会促进直播行业的发展。因此,开放合作也是必然的趋势。良好生态加上开放合作,意味着直播行业将有着更加美好的未来。
关于即构ZEGO
即构科技于2015年由QQ前总经理林友尧创立,A轮获得IDG投资,核心团队来自腾讯QQ,汇聚了来自YY和华为等厂商的顶尖语音视频人才。即构ZEGO致力于提供全球最清晰最稳定的实时语音视频云服务,助力企业业务创新,改变用户线上沟通方式。即构ZEGO深耕视频直播、视频社交、游戏语音、线上抓娃娃和在线教育等领域,赢得了映客、花椒直播、一直播、喜马拉雅FM、陌陌游戏、自由之战2、和好未来等顶级厂商托付和信赖。