带你了解S12直播中的“黑科技”
摘要:让精彩更流畅、让较量更清晰、让参与更沉浸、让体验更有趣,幕后的舞台,从来都是技术的战场,S12背后的名场面同样场场高能。
本文分享自华为云社区《用硬核方式打开S12名场面》,作者:华为公众号。
让精彩更流畅、让较量更清晰、让参与更沉浸、让体验更有趣,幕后的舞台,从来都是技术的战场,S12背后的名场面同样场场高能。
经过35天的鏖战,2022英雄联盟全球总决赛(S12)终于在11月6日落下帷幕。在这一个多月里,各方战队一路披荆斩棘,有命悬一线,也有高光瞬间,荣耀的背后始终跟随着挑战。而对于拥有S12直播平台独家版权的哔哩哔哩(以下简称“B站”)来说,亦是如此。
据悉,整个赛事期间,B站共完成了91场比赛的实时直播,其中最后一场的S12全球总决赛播出后,哔哩哔哩英雄联盟赛事直播间的实时人气一度突破3.1亿。
纹理更加清晰的画质、“纵享丝滑”的转播效果、沉浸感十足的互动特效、更贴心的无障碍直播间......S12直播可以看做是音视频领域“黑科技”的一次前沿试水。对于需承载亿万级并发在线观看人次的直播平台来说,每一处升级都错综复杂,每一点进步都得来不易。
高光时刻,和战队即时共享
在短视频、直播、社交等并进的互动时代,超高清已经成为游戏玩家的硬核需求。“得画质者得人心”,不管是音视频内容的生产商还是服务商,极致的画质体验已经成为获得用户注意力资源的武器。
而在B站上看过今年英雄联盟全球总决赛的观众,大都会明显感觉到:今年的赛事直播画面更清晰了,互动也更多了。
据【哔哩哔哩技术】官方公众号公布的信息显示,针对 S12的赛事直播,B站研发了一种实时画面超分算法来提升画面质量,该算法能够在源流的基础上使得画面细节更加清晰、纹理更加丰富。
▲低质图像/超分图像/高质图像/残差图像
图像超分算法在业内已经不是新词,目前主流超分算法分为非实时和实时处理两种类型。在过往,已有大量非实时超分算法的实践案例,比较典型的是视频网站将低分辨率、低清晰度的老旧视频转换成符合主流观看需求的720p、1080p、2k的高分辨率视频。但这种非实时超分算法的计算量很大,只适用于对视频实时性没有要求的场景。
在B站S12赛事直播这类对视频实时性要求很高的游戏直播场景中,实时处理的超分算法可大幅度缩减计算量,在提升画面质量的同时,也能提高视频处理效率。
在此前测试时,B站的实时画面超分算法将视频从1080p超分至4k分辨率,单卡处理速度可以达到75fps(画面每秒传输帧数)。这个处理效率对于60fps的游戏直播源流来说,在速度上还有较大富余。
此次B站推出的单卡4k 75fps的实时超分速度拓宽了超分技术在直播领域的应用。尽管目前该算法仅在S12官方赛事直播间应用,但据B站透露,未来其也将服务于更多需要较高实时性的游戏直播业务中,开拓更为广阔的应用空间。
不过,当前的互动时代,远不止画质等信息的“通信”传输,更强调的是共享时空,实时互动。
“看比赛时候的氛围有非常强的实时性和感染力,大家会想要把自己比较饱满的情绪及时表达出来,所以我们希望能通过除了弹幕或者是常规的点赞动作,让大家能把自己兴奋的一面更好地展现在直播间里,让所有在线的观众能共庆此时,分享快乐。”今年B站的赛事直播比较明显的变化是赛事房间使用了新版直播间,支持上下滑切换直播间、全新背景图、表情包弹幕等功能。据B站直播互动技术保障负责人CrystalDan介绍,为了增强互动性和趣味性,B站在直播间加入了不少新玩法。
例如在比赛到了团战、推高地等比较激烈的时刻,直播间会发起“点赞热力特效”,引导大家积极点赞为选手打call,在极短的时间内打满进度条后会出现酷炫的动画特效。一方面是让用户通过点赞的方式表达自己对这场比赛的热情,另一方面也让没有点赞的用户可以通过进度条和动画特效感受到紧张的比赛氛围。
再比如通过“小黄车”卖赛事装扮。当某一个战队获胜了,用户可能会由此产生购买该战队装扮或周边的欲望,以获得归属感和荣誉感。而直播间里的“小黄车”提供淘宝、京东、会员购、个性装扮等商品,能够满足用户边看边买的需求。此外,还有一键预约、礼物特效、弹幕表情等更便捷、强互动的功能,大大提升了用户的观赛和参与体验。
更好的画质,更多的玩法,说起来简单,要实现起来却并不容易。作为承载千万级乃至亿量级的赛事直播平台,任何细小的问题都会对用户体验造成巨大的伤害,而新的玩法也会带来新的场景计算和流量并发。
最强辅助,为直播保驾护航
简单来讲,本次S12赛事直播的流程可以理解为:
腾讯官方提供赛事的原地址;
B站的云源站拿到直播信号后,会进行画面的预处理,包括增强或锐化等;
进行转码和4k的一个超分;
将处理好的视频流通过CDN内容分发网络,下发至观众的设备中进行播放。
为了保障直播各个环节的稳定性,早在今年8月,B站的技术团队就制定出了周密的直播保障方案。不仅在技术上,对直播老网关做了迁移和容器化,并通过Go/PHP去cpuset化、内核升级推进了直播合池,提升了PaaS资源弹性,对核心功能做多活保证直播体验,还通过全链路压测、混沌工程、设定预案/SOP等技术手段,去提高系统的可靠性。
同时,在业务上,B站也与上游业务方做了合理的流量预估和资源预算,并同往年一样,选择依托华为云过硬的技术服务,以确保直播万无一失。
“从外面来看,我们整个直播系统是一个比较简单的结构,但其实整个直播系统后面涉及到的微服务有几百个。这对于直播的保障工作来说,是一件很有挑战的事情。”B站S12技术总负责人小卫在采访中说道。
要知道,赛事直播是一项比较复杂的工程,需要统一的管理和调度。因此,华为云容器的引擎为B站提供了混合集群的统一管理服务。基于华为云CCE容器的托管服务,B站搭建起导购台和中转台,配合华为高性能的GPU云主机进行赛事的流转码,让每场比赛都能够顺利地在亿万的终端上流畅、顺滑地调度播放。
“在今年新增的这些玩法中,高并发的读和写是同时存在的,我们需要在高并发的场景下,保证用户的互动体验。” 小卫表示。
本次赛事华为云还为B站提供了边缘分布式直播方案,帮助B站降低计算成本,消除了之前统一转码源站的单点故障,增强了直播过程中的稳定性、安全性。同时打造海量弹性资源池,按需调度,更好地提升了用户的互动体验。
例如基于华为云智能边缘站点,可实现视频访问的冷热分流:
- 如果用户访问冷视频,就通过边缘站点解析域名,经由华为云内部DCI高速网络访问直读存储OBS;
- 如果用户访问热视频,则通过热域名访问华为云CDN,通过CDN的就近内容分发,保证热度视频的用户播放体验。
通过这样冷、热不同视频的不同调度逻辑,细粒度管理,能够更精细化地管理与控制成本。
同时,华为云独创的高性价比直播方案——边缘G-EIP的网络算力分离,也是本次赛事技术支持中的一大亮点。
众所周知,华为云在很多城市都有大量优质稳定的计算资源,能够确保B站的收流、转码、录制等计算密集型业务的持续稳定运行。只不过,一线城市的带宽资源相对成本较高,直播又是带宽强依赖型业务,这样势必会导致直播建设成本上浮,形成成本与稳定不可兼得的局面。
因此,华为云针对B站的实际场景需求,创新性地将网络出口拉远至一线城市附近的二三线城市pop点,利用当地廉价的带宽资源与华为云主力region的网络服务绑定结合,做到了可靠性与成本兼顾。同时,也得益于华为云分布在全国各区域的边缘站点,终端用户得以就近接入,保障了流畅的观赛体验。
此外,除了对直播间的互动功能进行升级,在今年的S12期间,B站的无障碍直播间也使用了华为的高性能GPU云主机,在自动生成实时字幕上比去年更为快速、准确。
“每当我们有一些资源不足、备量不足的问题时,就会找到我们的合作伙伴一起去看能不能通过一些方案或者从内部协调一些机器,帮我们去cover这些问题。”据B站S12技术总负责人小卫介绍,在赛事期间,华为云会专门指派一些工程师到现场做驻场保障,在比赛的后端也会有团队远程在线互动,以确保不管是前方还是后方出现问题,都能及时响应,从而保证整个赛事过程的平稳顺利。
共进共赢,音视频产业迎来黄金时代
“希望成为中国年轻人的文化生活方式,陪这一代人一起成长。”成立13年,以技术创新为源动力的B站已发展成为了国内音视频行业的领军企业,而华为也在借助底层技术架构的不断创新,释放音视频技术生产力。
从1988年华为通话业务成就国内一流的音频引擎,到2004年华为视频业务拥有国内一流的直播CDN能力,再到2017年华为云上线CDN海量节点,以及今年和B站的合作进一步突破了视频直播这一复杂工程,华为始终立足于整个音视频大生态,探索技术在其中的创新价值。
而得益于底座能力与关键技术的持续突破,音视频服务体系正逐步从点播、直播到实时音视频深化发展。实时性与互动性的长足需求与优化,逐步激活了更多场景下的音视频互动模式,驱动用户的音视频消费习惯向更加还原真实、更加沉浸式的实时音视频服务迁移。
“我曾经看过一个电影叫做《头号玩家》。在我自己的设想中,未来一定是往这个方向发展的,是通过脑机接口或者类似AR、VR的技术来实现的。我觉得这种沉浸式的体验给用户带来的感受会非常好。”B站技术委员会负责人毛剑在采访中说道。
实时的音视频互动与社交娱乐场景具有天然契合度,不仅可以直接提升现有产品的基础属性,还可以融合空间音频、VR、AR等技术,给予用户沉浸式的实时互动体验。也正因如此,国内实时音视频的市场规模一直在不断上升,场景效能也在不断深化。
根据艾瑞咨询发布的《2022年中国实时音视频行业研究报告》显示,2021年中国实时音视频(RTC)PaaS市场规模为16亿元,同比增长10.3%。受社交娱乐头部应用的高度渗透及“双减”政策的持续影响,预计未来三年的复合增长率为28.4%,2024年实时音视频(RTC)PaaS市场规模将达到30亿元。
而目前来看,华为云的SparkRTC技术已经十分成熟,可提供高质量、低成本的实时音视频服务,实现了跨大洲端到端时延200ms以内,SLA服务可用性高达99.99%。
“我们设想的未来,它包含着元宇宙、数字孪生,也包括VR和AR在内的很多技术。实现这些技术的核心在于,在应用的过程中解决高带宽和低延时问题。在那之后,视频这个市场就会像星辰大海一样宽广。它能带来海量的视频,人人都会去享受视频。”华为云上海总经理张英梗在采访中说道。
可以预见,未来实时音视频将有望在越来越多的产业互联网领域实现落地,同时元宇宙相关应用的出现也将为消费互联网创造更大的想象空间。
据张英梗总经理介绍,无论是to B还是to C,华为云都具有丰富的服务经验,未来也将持续加强数字内容生产的生态体系构建和技术研究实践,助力客户搭建无限玩法或场景,共建实时互动的世界。
“我们希望客户和伙伴在整个大视频生态上,都能体验到未来技术带给他们的创新价值,让客户能更好地服务于他的客户以及他自己。同时,也希望我们的伙伴在整个华为云生态上,都能享受到‘一切皆服务’带给他们价值体验。” 张英梗说道。
S12虽已落幕,但属于B站与华为云的音视频“黄金时代”才刚刚开始。
带你了解S12直播中的“黑科技”的更多相关文章
- 什么是Spark(四)运算过程中的黑科技
Spark在运算过程中提供了一套完整的机制用来提高效率. 1. 用于收集信息的Accumulator,自带增量,用于spark全局收集数据:共享数据: 2. 用于提高传输速率的broadcast机制: ...
- addeventlistener回调函数中的黑科技
dom.addEventListener('click',callback/obj){},这里的callback除了传递一个函数之外,还可以传递一个属性带有 HandleEvent 方法的对象obj, ...
- 黑科技抢先尝(续2) - Windows terminal中Powershell Tab的极简美化指南
目录 安装python 安装git 安装powerline字体 主题定制 安装oh-my-posh 查看策略组的执行权限 使用choco 安装终端模拟器 - ConEmu 优化 PowerShell ...
- 一文带你了解 HTTP 黑科技
这是 HTTP 系列的第三篇文章,此篇文章为 HTTP 的进阶文章. 在前面两篇文章中我们讲述了 HTTP 的入门,HTTP 所有常用标头的概述,这篇文章我们来聊一下 HTTP 的一些 黑科技. HT ...
- Python3实现ICMP远控后门(中)之“嗅探”黑科技
ICMP后门 前言 第一篇:Python3实现ICMP远控后门(上) 第二篇:Python3实现ICMP远控后门(上)_补充篇 在上两篇文章中,详细讲解了ICMP协议,同时实现了一个具备完整功能的pi ...
- 从QQ音乐开发,探讨如何利用腾讯云SDK在直播中加入视频动画
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯游戏云发表于云+社区专栏 看着精彩的德甲赛事,突然裁判一声口哨,球赛断掉了,屏幕开始自动播放"吃麦趣鸡盒,看德甲比赛&q ...
- 黑科技抢先尝(续) - Windows terminal中WSL Linux 终端的极简美化指南
目录 修改默认源,为apt-get安装提速 安装python 和 python pip 安装 zsh 安装powerline-font中的特定字体 安装powerline-shell 修改~目录下的配 ...
- 新手玩CSS中的一些黑科技
哎哎 1.鼠标移进网页里,不见了= = *{ cursor: none!important; } 2.简单的文字模糊效果 *{ color: transparent; text-shadow: #11 ...
- 黑科技!仅需 3 行代码,就能将 Gitter 集成到个人网站中,实现一个 IM 即时通讯聊天室功能?
欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 高级架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...
- c++中比较好用的“黑科技”
切入正题,上黑科技 一.黑科技函数(常用的我就不写了,例如sort函数) 1.next_permutation(a+1,a+1+n) a[1-n]全排列 2.reverse(a+1,a+1+n) 将a ...
随机推荐
- KingbaseES集群管理维护案例之---备库checkpoint分析
数据库异常关闭时,数据库关闭时来不及或者没机会做checkpoint,则需要从上一个一致性检查的开始恢复.KingbaseES备机checkpoint是不能产生checkpoint WAL日志条目 ...
- JUC在深入面试题——三种方式实现线程等待和唤醒(wait/notify,await/signal,LockSupport的park/unpark)
一.前言 在多线程的场景下,我们会经常使用加锁,来保证线程安全.如果锁用的不好,就会陷入死锁,我们以前可以使用Object的wait/notify来解决死锁问题.也可以使用Condition的awai ...
- 【学习笔记】注意力机制(Attention)
前言 这一章看啥视频都不好使,啃书就完事儿了,当然了我也没有感觉自己学的特别扎实,不过好歹是有一定的了解了 注意力机制 由于之前的卷积之类的神经网络,选取卷积中最大的那个数,实际上这种行为是没有目的的 ...
- 了解如何配置Nginx日志
设置access_log 访问日志主要记录客户端的请求.客户端向Nginx服务器发起的每一次请求都记录在这里.客户端IP,浏览器信息,referer,请求处理时间,请求URL等都可以在访问日志中得到. ...
- 利用 Nginx 反向代理搭建本地 yum 服务器
在政府,医院等单位有网络安全要求,对内外网进行物理隔离,然而内网主机无法访问互联网下载安装包,通过Nginx 反向代理搭建本地yum服务器实现内网主机安装包下载. Centos 8.2 部署 Ngin ...
- Mysql三种日志(binlog,redolog,undolog)的作用和区别
Mysql有三种很重要的日志也是面试经常涉及到的考点,分别是 binlog .redo log和undo log, 这里面binlog 是server层实现的日志,而redo log 和undo lo ...
- 分布式存储系统之Ceph集群访问接口启用
前文我们使用ceph-deploy工具简单拉起了ceph底层存储集群RADOS,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16724473.html:今天我 ...
- 从SVN导出项目出现的乱码问题
解决的方法很简单,只需要将Eclipse的编码标准设置为UTF-8即可 1.Window->Preferences->General->Workspace 面板Text file ...
- Java一次返回中国所有省市区三级树形级联+前端vue展示【200ms内】
一.前言 中国省市区还是不少的,省有34个,市有391个,区有1101个,这是以小编的库里的,可能不是最新的,但是个数也差不了多少. 当一次返回所有的数据,并且还要组装成一个三级树,一般的for,会循 ...
- Kafka之安装
Kafka之安装 一.下载kafka 此博客只讲述kafka0.8和kafka1.0两个版本 更改kafka下的/home/bigdata/kafka/config/server.properties ...