阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

央视在世界杯高清直播中占了 C 位 它是怎么做到的?

  • 2018-06-27
  • 本文字数:2991 字

    阅读完需:约 10 分钟

世界杯直播你看了吗?央视网、央视影音的清晰度及流畅度是不是给你留下比较深刻的印象?我们先看下网友们的反馈:

央视作为本次世界杯的版权方和内容分发方,对于本次世界杯直播的支撑服务有着极高的技术要求。而央视网最终也是选择了腾讯云的视频云极速高清产品,来为其全国用户提供流畅稳定的高清直播服务。

从效果来看,极速高清服务在央视网正式上线运营后表现确实不错,在世界杯开赛后与其他平台用户体验也形成了比较鲜明的对比,一改过往用户对央视大型赛事直播的看法。

本文从极速高清的工作原理出发,详细介绍腾讯云的深度学习技术如何对世界杯直播场景进行优化,其中还有腾讯云如何在 PK 中胜出、如何在一周内完成央视网极速高清服务私有化部署等不为人知的故事。

腾讯云极速高清:深度学习效能如何最大化?

普通转码主要存在的质量问题有:转码失真、低分辨率模糊、镜头抖动、噪声大、低码率锯齿块等。

极速高清服务是腾讯云视频云新推出的智能动态编码技术,主要原理就是通过深度学习,对直播视频流进行智能处理,从而以更低的带宽成本给用户提供更高清的视频直播流。主要通过以下几个模块协作完成。

  • 视频场景智能分类

首先通过深度学习的方法,形成包含游戏,体育,秀场,户外,动漫,美食,影视剧等在内的十几个主流大类及几十个小类场景模型库。极速高清服务开始期间,对实时直播流进行检测分析,并匹配对应场景模型。在匹配率方面,较明显的场景如游戏,足球,篮球,动漫等,CNN 网络模型匹配准确率达到 98% 以上;在电视剧,户外运动,美食,旅游等画面特征分散、帧间运动变化较大的场景下,CNN+RNN+LSTM 做时域及空间域的分析,准确率也在 85% 以上。

  • 编码参数匹配

根据第一步场景分类实时识别结果,接下来结合视频源码率、帧率、分辨率、纹理和运动变化幅度等情况,以及综合机器负载和画质效果等维度,选择最优编码参数。

  • 前置处理

根据不同场景分类、客户对视频画质的不同要求,以及结合视频源画面纹理和实时运动检测结果进行锐化、软模糊、反交错、去块、降噪、色阶补偿、降帧等前置处理。

  • 编码动态优化

腾讯云极速高清服务针对不同视频类别,或者同一个视频内的不同视频段,应用完全不一样的编码参数。其中包括但不限于:IBP 帧类型、量化参数 QP、分辨率等;而且支持编码参数按帧实时更新生效。

  • 码率智能控制

由于不管是标准 H.264/JVT-G012 码率控制算法还是 x264 的码率控制算法,在运动变化切换比较明显的场景下,预编一次得到率失真理论凸曲线都是尽可能接近最优失真曲线,对于运动场景实时检测切换比较明显的场景帧,我们会在 x264 码率控制的基础上,综合帧时序信息做一些补偿因子和画质控制,使得主观观看得分 VMAF 值会有 3-5 分以上的提高。

图注:极速高清在 VMAF 得分相同情况下,码率控制更低更精准。

  • detail reduce

针对 h264 视频编码格式,我们设计了一种在视频残差的频域上消除噪声的算法。该算法结合了当前编码宏块的残差大小,宏块的 QP 值,历史的频域值等,并根据不同场景选择匹配的 video denoise 模板,自适应地进行宏块级的视频处理,能够以极低的 CPU 消耗对噪声宏块进行优化,同时保留清晰宏块的完整性。

  • ROI 处理

SIFT+ 差分图像 + 运动目标图像检测或用户指定 (如台标、水印) 关注 ROI 区域,对该区域的宏块编码进行强化 (放大 / 缩小量化步长)、锐化、色阶补偿等处理,如央视网世界杯就要求对台标和字幕区域画质和亮度增强。

腾讯云视频云主要通过以上模块协作处理在云端开启腾讯云极速高清服务。

从模拟到切量:500+ 场的世界杯赛前预演

今年春节后,腾讯云极速高清服务开始陆续接入一些头部游戏直播平台,但针对体育赛事特别是足球赛事的客户,我们一直没有接触到。世界杯前我们针对足球赛事场景做了一次系统化的机器学习以及视觉效果优化评估,以便为即将到来的世界杯做好准备。

  • 预演:机器学习和视觉调整

我们通过网络爬虫收集到 500 场足球比赛视频,针对每场比赛视频,在高速运动场景,足球跟随模型训练,长远镜头优化,精彩回放 ROI 区域增强,观众表情捕捉等细节上,做出视觉效果分析以及优化效果评估,以便打造世界杯最优动态编码模型。

  • 中超:试水极速高清服务

虽然我们一直在自己优化足球赛事的动态编码模型,但一直缺少真实的落地用户,此时内心还是有些忐忑的。大约 4 月中旬的时候,我们向龙珠直播的中超比赛主动推广了极速高清服务,并针对中超的一些比赛逐步增加了极速高清服务,虽然开始的时候出现过一些问题,但后来逐步优化后,效果可以满足客户需求。

  • 英超:切量大幅推广

经过前期在龙珠中超比赛中的实践,我们心里基本有底,后期开始主动寻找一些体育赛事客户。新英体育作为英超在大陆的版权方,在英超比赛方面基本一家独大(而且英超的比赛节奏要远远快于中超,这一点跟世界杯的场景会更加匹配,我们对新英体育进行了极速高清服务的推广,在多轮的测试及优化下,最后客户验证通过。

看不见的 PK:几十次服务升级和优化

央视作为整个视频云行业都极其看重的客户,是各家云厂商的必争之地。此次世界杯前,央视决定在世界杯期间引入提升比赛清晰度的新技术后,各云服务厂商都提供了自己的解决方案。经过几轮测试,央视网最终决定在腾讯云和某云厂商之间选择一家,由于世界杯已经临近,对于我们来说是极大的考验。在与对手的 PK 过程中,我们在码率控制、去模糊、去块、反交错、运动搜索和分块决策等模块上共进行了几十次的服务升级和优化,经过一轮又一轮的 PK,央视网最终选择了腾讯云。

图注:极速高清在 VMAF 质量稍微有优势情况,码率比友商少 8%-10% 左右。

我们是如何在一周内完成私有化部署的?

虽然在技术指标侧我们胜出,但由于世界杯的特殊性及紧迫性,且客户暂时没有相匹配的服务器等硬件资源,所以需求就变成了:自带机器私有化部署。其实前期我们与客户沟通的过程中,“私有化部署”一事我们是清楚的,也在着手准备着。但此时时间紧迫,面对“服务器自带”,“交换器自带”,“运维人员自备”等需求,留给团队准备的时间着实太少。但我们绝不想功亏一篑,况且服务好本次世界杯的高清直播,对用户,对客户,对腾讯来说都是极其重要的一件事。经过紧急协商,我们拿出了新的私有化方案。

  • 升级后私有化部署目标

在央视网搭一整套腾讯云极速高清转码集群,支持央视网世界杯期间 CCTV5 频道直播,RTMP/FLV 推拉源流,转码处理后支持央视 RTMP/FLV/HLS 拉流。

  • 升级后私有化机器部署

客户机房只有机架资源,考虑到如果让客户准备相关硬件资源,集团走采购申请的周期太长。若按常规流程,来不及服务此次世界杯。所以转码机器我们从公司外借 10 台 M10,其它相关辅助设备如:交换机、光模块、光纤、网线等也经过了相关同学通力协作,进行了分头采购。在进行服务器等硬件部署时,开发及架构师同学甚至亲自布线、拧螺丝。(这才是真正的全栈工程师)

开场哨响 我们比球员还紧张

最终,在世界杯开赛前我们兼容了客户硬件设备以及软件代码模块的各种适配要求,接下来就是实战的考验了。

第一天比赛开始前,大家心里都还很紧张,之前一切的努力如果在直播开始后出现问题,那都将付之一炬。开赛后,我们紧张地盯着屏幕:各项服务指标一切正常,出流效果超出预期,播出效果对比其他平台优势明显。第一天的比赛后,我们也从客户那里获得了极高评价,外部用户的反馈也让我们心里的石头落了地。但是,比赛才刚刚开始,为期一个月的世界杯,我们也会在看不见的地方继续战斗!

本文作者:腾讯云高级产品经理 李海琦

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2018-06-27 16:583225

评论

发布
暂无评论
发现更多内容

深入浅出用户态协议栈

C++后台开发

后台开发 TCP/IP 网络协议栈 C++开发 用户态协议栈

6个月我从小厂逆袭,薪资上涨70%,坐上美团L8技术专家!

收到请回复

Java 云计算 开源 架构 编程语言

字节二面:Redis 的大 Key 对持久化有什么影响?

程序知音

Java 数据库 redis 字节跳动 面试

谈一谈 build-scripts 架构设计

Java-fenn

Java

Java 异步编程 (5 种异步实现方式详解)

Java-fenn

Java

C++ 左值引用与 const 关键字

Java-fenn

Java

Java培训可以从事哪些工作

小谷哥

C++ 中 Lambda 表达式的快速指南

Java-fenn

Java

设计模式之备忘录模式

Java-fenn

Java

Go 语言为什么建议定义零值可用的结构体?

Java-fenn

Java

通过自动化单元测试的形式守护系统架构

京东科技开发者

系统架构 单元测试 代码评审 代码质量检测工具 Archunit

史上最全大厂面试题复盘总结,全会进大厂拿35K没问题(Java岗)

收到请回复

Java 云计算 开源 架构 编程语言

21个大厂Offer?这份“Java核心技能精讲”轻松收割

收到请回复

Java 云计算 开源 架构 编程语言

快速构建基本的SpringCloud微服务

Java-fenn

Java

MySQL约束和事务知识归纳。

Java快了!

MySQL

京东云无线宝产品部负责人张晓东 : 京东云无线宝与开源的亲密关系 | 《大神详解开源 BUFF 增益攻略》讲座回顾

Apache IoTDB

物联网 京东云 企业号九月金秋榜

拼多多、蚂蚁、字节2022届(大三)后端研发暑期实习

Java-fenn

Java

【荣耀帐号服务】手把手教你快速上手快应用接入

荣耀开发者服务平台

数据库 前端 手机 服务器 honor

mysql优化---如何搭建mysql的主从关系和mycat中间件

Java快了!

【Go】go build失败,报方法undefined

非晓为骁

Go 编译 go build

在武汉Java培训费用多少

小谷哥

为什么说企业需要关注客户体验?怎样去提升它?

Baklib

企业 客户体验

教你如何用CSS修改图片颜色

千锋IT教育

面试官:说说Java并发运行中的一些安全问题

Java-fenn

Java

女生参加java培训前景如何

小谷哥

什么是帮助中心?企业该怎样制作帮助中心页面?

Baklib

企业 帮助中心

低代码平台包罗万象,企业应该如何做出抉择?

ToB行业头条

【CSM认证】11月1-4日在线工作日班 | 全国招生

ShineScrum捷行

项目管理 Scrum Scrum Master 敏捷项目管理

与未来对话:PingCAP 用户峰会亮点全放送

PingCAP

#TiDB

大数据培训机构如何选择

小谷哥

深圳web前端培训费用多少?

小谷哥

央视在世界杯高清直播中占了C位 它是怎么做到的?_语言 & 开发_李海琦_InfoQ精选文章