对话快手苍鹏:播放器还有什么新玩法?
2017年,我通过陆其明邀请到了播放器专家金邦飞来LiveVideoStackCon,当时金邦飞告诉我播放器已经没有太多技术突破的可能性了。不过,五年后再看播放器却仍有不少机会。比如通过Webassembly在浏览器上实现接近原生性能的播放器,更可以在浏览器上实现计算密集型任务。而云游戏、远程桌面等应用通过大量客户端与服务端交互协作,解决终端算力不足的问题。此外,我在和智令互动的张瑞圣交流中得知,互动视频已经在教育、娱乐、广告等场景有非常多的成功案例。快手播放技术中心负责人苍鹏表示,快手正在探索播放器互动性方向的能力,将带来更多新玩法,例如全景视频、6DoF以及客户端3D渲染等。目前,3D渲染已经在电商场景下有落地应用。
在LiveVideoStackCon 2022北京大会前夕,我们和苍鹏畅谈了播放器的未来。
苍鹏 快手播放技术中心负责人
苍鹏,曾任乐视致新高级技术总监,负责电视/手机/车联网/VR的多媒体框架,对安卓系统的音视频播放框架有着丰富经验。2017年加入快手,主要负责移动端/Web端音视频播放,移动端图片渲染和资源下载,致力于在音视频消费端为用户提供极致的播放体验。
Dialogue with CangPeng
LiveVideoStack:苍鹏你好,2020年曾经邀请你来上海LiveVideoStackCon分享,可惜因为疫情影响只能通过线上和大家交流。能否借这个机会和大家简要介绍下自己?
苍鹏:我在音视频领域已经工作十多年了,而且绝大部分工作经验都是播放器方向,从实习开始接触流媒体传输,毕业后进入一家芯片公司做多媒体框架,之后加入乐视负责乐视多终端平台的多媒体团队。2017年加入快手,建设播放技术中心,负责快手播放、图片、下载的终端解决方案。一路走来,是从底层芯片到终端厂商,再到APP开发,一步步从音视频终端开发的底层走到上层。
LiveVideoStack:你说互动性是视频的趋势?怎么理解互动性?要实现互动需要做哪些工作?在快手已经落地了哪些应用?未来有哪些计划?
苍鹏:一直以来,视频方向都在追求清晰度,流畅度和互动性,当然直播方向还会追求实时性。音视频领域长期在关注清晰度和流畅度两大方向,如4K、8K、SR(超分辨率)带来清晰度提升,高压缩率、多码率算法、网络稳定性提升流畅度。但这些方向的用户体验都是被动的,在到达一定高度后用户可能就无感了。因此,最近几年很多公司都在探索让用户主动参与的音视频体验新场景和新技术,如VR、互动视频等,增加用户的沉浸感和互动性。
快手在音视频技术领域对用户互动性的探索,例如全景视频、6DoF、3D渲染方向等都已经支持上线,互动视频在一些活动上已经应用,今年也与Nreal合作上线了快手AR。除了内部业务的探索,在StreamLake服务外部客户过程中,我们也收到了来自不同客户的诉求,客户对新技术在自身场景的应用非常感兴趣。因此未来我们仍然会从需求和技术双向驱动,在音视频方向对用户互动性进行持续的探索与实践。
LiveVideoStack:如何在开发工程效率和用户体验之间保持平衡协调,能说说你们的思考和经验吗?
苍鹏:提到用户体验,一般会关注流畅度、清晰度等,但还有一个影响用户体验的基础是稳定性。如果谈到工程效率的影响,最重要的是保障稳定性与交付效率的平衡。从快手播放器角度看,每天要承担近千亿的播放量,稳定性是第一要务,可能一个小bug就会影响到上亿的播放。而我们要承接的业务量级也较大,每天都会收到业务需求和优化需求,这意味着对播放器要求最高的交付效率。作为研发,大家都知道需求的高速迭代对稳定性会带来极大挑战,我们一直在追求又快又稳。
首先是技术架构,优秀的技术架构使技术方案更清晰,执行效率更高,同时代码质量也会更优质,这些都进一步保障了稳定性,我们对整个多媒体消费过程进行了合理的抽象,通过架构上的先进性来提供符合业务要求的高效实现方案。比如基于模块插件化,降低了播放链路上各个功能节点的耦合性;通过配置中心、策略中心和消息处理中心等架构分层,实现播放业务和播放内核的分离。这种优秀的架构设计,在确保稳定性的同时,也为互动视频等复杂业务场景提供了灵活的解决方案。在模块交互方面,我们基于信号槽机制,把媒体消费流程从函数调用转变为面向消息事件的处理,播放架构提供了全新的编程指引,可以极大提升开发效率,并降低三方接入成本。在性能方面,我们使用统一的线程池对播放全场景进行调度,降低了模块化解耦带来的性能损耗。伴随音视频技术快速迭代,播放架构也在进行着动态演进,快手播放器技术不断迎来新突破。
其次是流程标准,可谓“世界上最可靠的是人,最不可靠的也是人”,快手技术同学都是万里挑一的,推进了技术方向和技术架构的演进,但是工作中也会存在“bug”。如果完全依靠研发和测试同学,很难百分百保障软件的稳定性。因此我们针对播放器的开发、测试、发版阶段建立了一套完善的CICD流程,使各阶段彼此独立且能高效流转。在各阶段内,通过部署自动化工具,降低研发、测试同学在支撑型工作上的投入;在版本发布的各个阶段,提供检查拦截工具,减少不必要的人力干预,减少因信息同步不完整引入的风险。在提升研发、测试同学成就感及幸福感的同时,能更高效、高质量为用户提供更有价值的产品。另外,针对线上问题也有一套完善的监控体系,及时发现问题。整个过程也建立了相应的数据看板,通过数据能反向驱使整个CICD流程的不断优化改进。
LiveVideoStack:客户端与服务端会更多的协作分工是一种趋势吗(大算力交给服务端,客户端负责展示)?比如在远程桌面、云游戏等场景,你是怎么看的?
苍鹏:表面上看我认为这一定是一种趋势,像远程桌面和云游戏都有落地场景。从终态上看,网络足够好,服务端算力充足,技术解决方案能达到实时性,用户不用购买高价的终端设备,所有的端侧设备就是屏幕,甚至是投影,走到任何地方,随便找个屏幕或者戴上眼镜,就能开发、玩游戏、看视频。
但理想很丰满,现实很骨感,经过这么多年的演进,部分应用场景还难达到本地计算的体验,而且终端设备性能越来越强,价格越来越便宜。因此,从业务上,对于这种趋势的投入建议还是关注在垂直领域和真需求上;从技术上,我是支持新方向新技术的演进。
LiveVideoStack:在播放器上还可能哪些新玩法?说说你的想法。
苍鹏:从玩法或者体验趋势来看,仍然是超高清、多终端、智能化、沉浸式、互动式等演进方向。基于过往的业务实践和积累,进行了如上内容的分享,更多的技术内容将在StreamLake专场进行,敬请期待!
*封面图来自Unsplash
▼扫描下图二维码或点击阅读原文▼
了解大会更多信息
微信扫码关注该文公众号作者