NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

虎牙直播技术演变之路

  • 2021-04-14
  • 本文字数:3972 字

    阅读完需:约 13 分钟

虎牙直播技术演变之路

2021 年 3 月,虎牙交出了去年成绩单,披露发布了 2020 年 Q4 及全年财报。2020 年第四季度,虎牙总收入为 29.90 亿元,全年总收入为 109.14 亿元。作为游戏直播领域的头部企业之一,虎牙在盈利方面一直保持着稳定的增长,但在盈利背后少不了技术的支撑。那么,在基础架构技术方面,虎牙经历了哪些演变?面对新兴技术,虎牙又是如何选择和应用的?… 为了解答这些问题,InfoQ 记者采访了虎牙公司主播服务技术部副总经理徐光兴和基础保障部技术总监王华夏。

虎牙直播技术演进驱动内容创新


InfoQ:虎牙直播作为直播行业的头部平台,从技术角度看让虎牙处于领先的主要原因有哪些?技术能力在虎牙商业成功的过程中扮演着怎样的角色?


徐光兴:虎牙的战略之一就是技术驱动内容,技术能力是虎牙业务创新发展的原生动力之一。虎牙在直播技术核心方向持续投入,重点聚焦于实时内容创作与直播互动技术,在端边云实时调度、实时 AI 内容生产、实时驱动与渲染、实时美化加工、虚实互动等核心能力都取得了不错成果。这些技术能力与业务深度融合,再基于业务反馈持续优化创新,形成相互促进的良性循环,帮助虎牙在内容形式创新、用户体验两大维度获得了差异化的竞争优势。


举例来说,吃鸡游戏火爆之前,虎牙在业内率先支持蓝光 8M 高清开播,从而抓住了新游的机遇;再比如利用端边云调度和实时加工能力,业内率先实现 PC/ 移动端同时支持高清多人连麦。


InfoQ:能结合直播技术的发展演进谈谈虎牙的技术架构演进吗?有何特色?


徐光兴:直播技术演进与互联网信息传播技术的发展息息相关。信息传播经历了从最早的纯文字、到图片和语音,再到视频和直播的发展过程。在这个过程中,技术作为信息传播的载体,传输的数据量越来越大,传播的内容形式越来越丰富。


具体来看,直播技术演进主要可以分为三个阶段:


第一阶段:直播技术从最早的语音开黑房间,到语音直播,再到游戏视频直播演进。这个阶段的关键技术是大数据视频不卡不掉不延迟的传输技术,这也是虎牙一直深耕并占据优势的领域。


第二阶段:2015 年,随着移动互联网普及和智能设备成熟,视频直播迎来了快速成长的第二阶段。手机开播、蓝光高清、投屏直播、直播互动等都是在这个阶段涌现,AI 和大数据等技术也在这个时期逐渐参与到直播内容生产与分发的各个环节。


第三阶段:在第二阶段后期,主流直播平台的内容生产能力逐渐趋同。此时,直播平台必须做出差异化才能具有竞争力。虎牙通过搭建端边云结合的技术架构,并升级为内容生产加工与互动服务的内容生产网,进入到了第三阶段。突破端上算力限制,推出虚实结合的交互方式,内容质量与互动能力得到了同步提升。


InfoQ:刚刚我们结合直播技术的发展讲述了虎牙内容生产与互动技术的演进,那么底层基础技术架构,它主要会涉及到哪些方面?又是如何支撑公司整体技术运转的?


王华夏:所有支撑业务正常运行所需要的 IT 基础设施,都是基础架构的工作内容。从混合云的建设(包括机房选址到机器的选型,云厂商的选择)、资源虚拟化、资源交付,到流量接入,基础中间件服务以及依托这些服务构建的一站式 PaaS 平台。


基础架构的核心要求就是提供更稳定、性价比更高、能力更强的基础服务给上层业务,使得业务可以快速构建创新产品。



图示:虎牙基础技术架构图


而从支撑公司整体技术运转的角度看,主要包括两个方面:


1、技术能力上,是否具备前瞻性。 业务层有创新需求时,基础服务是否具备相应的能力。基础能力建设要永远跑在业务需求前面,而不是临时抱佛脚。


2、满足业务发展需求,支撑产品迭代。 实时内容创作与直播互动技术是虎牙的两大核心技术能力,相应地,它们对基础设施支持的要求也高于行业平均水准。以实时互动为例,它对网络延时、稳定性的要求极高。因此,虎牙基础架构团队在边缘计算方面做了很多工作,支持实时内容加工能力很好下沉到边缘,研发了边缘容器方案和边缘容器网络。为解决边缘公网抖动的问题,自研了“蜘蛛侠”虎牙 SDWAN 解决方案,建设了基于 ebpf 和 dpdk 的适应视频业务高带宽、低延时的高性能边缘网关。

源于社区,终于社区,虎牙如何应用实践新技术?


InfoQ:技术架构之外,具体的技术采用往往也是决定产品成败的关键,最近在直播技术方向上,你们最关心哪些新兴的技术趋势呢?


徐光兴:我们一直在关注直播互动及其相关技术的发展,例如 5G 的大带宽低时延,能否带来移动端更多直播互动玩法;VR/AR 的成熟与落地,在提升用户观看体验、塑造多元内容的同时,是否会诞生新的交互方式。


我们在直播互动领域的一次重要尝试就是虎牙首创的虚实互动技术,实现了虚实结合多人同台,将真人、虚拟人、用户、真实场景、虚拟场景等众多元素结合,打造了新颖的多人实时互动玩法,丰富了直播画面元素,增强了视觉冲击力,提升了用户的参与感。


InfoQ:能举一个通俗易懂的例子来说明虎牙是如何应用新技术的吗?取得了怎样的效果?


徐光兴:2020 年,虎牙推出了首个虚实结合 AR 直播节目《电波之夜》,让真人主播、虚拟主播、IP 等虚实多人同台,进行歌舞表演,对人物表情动作进行高质量实时捕捉,在呈现和互动效果上达到了新的高度,集中展示了虎牙的虚实结合技术。


  • 在人物形象处理上,实现了发丝级色键抠像处理、真实世界光照光源景深位置理解。此外,基于摄像机虚实追踪同步技术,实现厘米级精度场景人物精确追踪,做出真人和虚拟形象拟真的接触交互 MR 互动效果。

  • 在场景上,支持动态光线追踪和复杂光影渲染效果,呈现出了炫酷的舞台效果,实现了 3A 级场景。

  • 在实时驱动技术上,使用消费级摄像头和麦克风,对虚拟形象进行表情、肢体、语音全方位的 AI 技术驱动生成,使虚拟人物达到了真人级别的拟真度。通过轻量级的表情驱动,把表情迁移到虚拟形象的面部;通过肢体驱动赋予虚拟形象和真人一样的肢体动作,解决了轻量化的半身驱动和手掌驱动的业界难题;语音上,只靠麦克风音频的输入,就可以用语音让虚拟人嘴部动起来,和主播说话同步。



图示:虎牙直播首个虚实结合 AR 直播盛会“电波之夜”


InfoQ:现在大家都在讨论自主可控与开源,虎牙是如何思考的呢?


王华夏:目前我们的技术策略是:优先考虑开源,在开源的基础上做二次开发。我们不鼓励全部自己造轮子,特别是行业中已经存在比较好的解决方案的时候。以中间件技术为例,ES、MQ、名字服务、Web 网关等多来自开源技术。在技术自主可控上,虎牙更关心的是在快速支持业务需求的同时,保持稳定高效运行。另外,我认为不管技术是原创还是开源,能吃透使用的技术或方案,系统出现问题时能迅速解决,这才是真正的“可控”。


我们鼓励使用开源,并不意味着用开源搞定一切。在实际工作中,我们发现业务团队直接去使用开源中间件的时候,学习和使用成本非常高。面对不同的场景,开源项目通常不能直接满足业务的特色需求。所以,我们在尽量保持和开源版本同步的情况下,会基于开源服务做二次封装并且服务化交付,让业务团队可以忽略差异而只用关注业务需求。同时,我们也需要解决中间件高可用、可观测、资源利用率等问题,这些都离不开技术创新,我们在中间件服务一个技术方向上申请的专利数就超过了 20 个。


除了使用开源技术,我们也会反馈社区共建开源生态,公司内部很多同学都是热门项目的 committer。我们也在筹备开源行业前沿的技术项目,比如前文提到的边缘容器化、边缘网关、SDWAN 等边缘计算项目。虎牙在云原生时代的技术态度是:源于社区,终于社区。

不做“两耳不闻窗外事一心只顾敲代码”的程序员


InfoQ:你们是如何开展团队的文化建设工作的呢?团队文化的建设对于实际工作的推进是否有一些帮助呢?


王华夏:团队文化建设首先要明确建设目标是什么。我们的目标是为了打造锐意创新、开放协作的团队氛围。


我们主要从管理制度、技术运营和技术激励三个方面开展团队文化建设:


  • 管理制度方面,我们采用了 OKR 目标管理,有助于形成信息透明、自下而上自主决策的工作氛围;

  • 激励制度方面,鼓励技术创新、加强服务化意识,通过评奖充分发挥榜样作用,激励更多团队和同事学习,形成良好的竞优氛围;

  • 内外联动的多维技术运营,这是虎牙团队文化建设比较有特色的部分。对内,建立常态化技术交流分享机制,提供思想碰撞的平台;对外,帮助大家走出去,向一流技术大会推荐议题和讲师,加强技术交流,建设学习互动型团队。


团队文化是一种无形的力量,在潜移默化中感染团队成员,统一团队的价值和目标认知,提升成员归属感和使命感。在实际工作中,可以激发员工自驱力,提高协作效率,充分挖掘团队潜力。


InfoQ:技术总在不断的演进,但是有的程序员年龄上去之后就跟不上技术的演进步伐了,你们是怎么看待这个问题的?有没有比较好的解决方法?


徐光兴:年龄永远不是学习的障碍,有经验的人学习新技术往往更快,因为更能透彻理解背后的原理。在程序开发领域,技术变化日新月异,但万变不离其宗,各种技术五花八门,但都遵循类似的原理和基础。那么,能否通过积累,形成经验优势,就需要个人多看多思多总结,敢于提出新的想法和方案,逐步形成自己的一套持续验证和迭代的方法论。


其实,不只是程序员这个职业,各行各业随着时代的发展都在不断演进,保持开放的心态,紧跟行业前沿,敢于拥抱变化,持续学习,不断增强自身能力很重要。


在公司层面,开放、良好的技术学习氛围很重要。就像刚说到的团队文化建设,能够鼓励员工互相交流学习,激励员工走出去开拓视野,不做“两耳不闻窗外事一心只顾敲代码”的程序员,适时调整思维方式和工作模式,保持技术敏感度。


近几年,虎牙技术团队都会组织核心技术人员去顶级互联网公司交流,我们也十分感慨,像 Amazon、Google、Microsoft 等企业,很多工程师都会干一辈子,即使年纪很大的技术专家依然在激情十足地敲着代码,为公司贡献着价值。我们相信,只要保持紧跟技术前沿的热情和持续学习的心态,年龄并不是限制技术人员的天花板。


采访嘉宾


徐光兴,虎牙公司技术副总经理


王华夏,虎牙公司技术总监


2021-04-14 16:174350
用户头像

发布了 497 篇内容, 共 309.3 次阅读, 收获喜欢 1907 次。

关注

评论 3 条评论

发布
用户头像
对于基础架构存储、计算、网络方向有意向者,可将简历投至caixiaodan@huya.com
2022-02-09 11:28
回复
用户头像
对于基础架构存储、计算、网络方向有意向者,可将简历投至caixiaodan@huya.com
2022-02-09 11:23
回复
用户头像
这个是文字采访还是面对面的采访?
2021-04-15 10:32
回复
没有更多了
发现更多内容

实时数仓Workshop · 广州站 9.15 邀您参加!

Apache Flink

大数据 flink 流计算 实时计算 实时数仓

开源一夏 | React对于生命周期的深入研究

恒山其若陋兮

开源 8月月更

1个理念4个步骤,快速上手客户体验管理

创意时空

购物体验值急转直下?消费体验的症结和解药在这里!

创意时空

[JS入门到进阶] 哎,被vite小坑了一波,大家记得配置build.cssTarget为'chrome61'

HullQin

CSS JavaScript html 前端 8月月更

一文读懂隐私公链Findora生态布局

鳄鱼视界

后端面试必备知识点

浅羽技术

Java 面试 后端 8月月更

每日一R「16」实践课之 kv-server(二)

Samson

学习笔记 8月月更 ​Rust

什么是数据结构

乌龟哥哥

8月月更

vim设置go语法高亮

程序员欣宸

vim 8月月更

开源一夏 |为什么线程池不允许使用Executors去创建?

六月的雨在InfoQ

开源 OOM Executors ThreadPoolExecutor 8月月更

leetcode 205. Isomorphic Strings 同构字符串(简单)

okokabcd

LeetCode 算法与数据结构

J-Tech Talk | 编写Dockerfile的最佳实践

Jina AI

Docker J-Tech Talk

Hash算法详细介绍与实现(一)

迷彩

hash算法 8月月更

头脑风暴:二叉搜索树中的众数

HelloWorld杰少

算法 LeetCode 8月月更

盘点:阿里云效平台的5大替代解决方案

PingCode

乐观锁和悲观锁各自应用场景

浅羽技术

Java 乐观锁 悲观锁 8月月更

MySQL常见面试题

浅羽技术

MySQL 数据库 面试 后端 8月月更

拆解实体门店转型升级中的体验思维

创意时空

页面切换转场动画,英雄救场更有趣!

岛上码农

flutter ios 前端 移动端开发 8月月更

我是咖啡师,在软件公司上班|ONES 人物

万事ONES

StarRocks 与奥威软件完成产品兼容认证,共同打造数据驱动的智慧企业

StarRocks

数据库

一文读懂隐私公链Findora生态布局

BlockChain先知

客户案例|雅森帮携手观测云,保障海量在线用户服务体验

观测云

SMTP协议详解

工程师日月

8月月更

一文读懂隐私公链Findora生态布局

股市老人

当满世界喧嚣“All in Web3”,但你可以慢慢来

One Block Community

区块链 程序员 开发者 就业 黑客马拉松

索信达控股上半年成绩出炉:核心业务收入大幅增长75.3%

索信达控股

如何快速地学习东西(上篇)

宇宙之一粟

学习 成长 8月月更

阿里云实时计算 Flink 版 x Hologres: 构建企业级一站式实时数仓

Apache Flink

大数据 flink 流计算 实时计算 实时数仓

隐私公链Findora生态布局,隐私赛道发展急先锋

EOSdreamer111

虎牙直播技术演变之路_架构_田晓旭_InfoQ精选文章