共计 2892 个字符,预计需要花费 8 分钟才能阅读完成。
欢迎大家前往腾讯云 + 社区,获取更多腾讯海量技术实践干货哦~
本文由腾讯云视频发表于云 + 社区专栏
关注公众号“腾讯云视频”,一键获取 技术干货 | 优惠活动 | 视频方案
欢迎来到吃鸡战场
很生气!!!我才刚落地,就因游戏界面糊了一下,阻止了我捡枪的步伐,就被不知道从哪蹿出来的家伙给打死了!!!瞬间落地成盒!!!
我很愤怒,于是找了游戏部门的同事吐槽了一番,得到的回答是:画质的问题归你们部门,劳烦你自行进行处理!
为了能让自己有个愉快的游戏体验感,于是乎,深陷于研发高清画质的工作中……
经过前期的了解,得知当前游戏直播行业 1080P、>=45FPS、码率 6 -10mbps 已成为游戏主播上行的标配,各视频平台用户对视频源清晰度观看体验要求越来越高,CDN 带宽成本占视频 APP 平台成本比例大头。如何降低带宽成本压力是各视频平台降成本最重要的措施,其中视频降码率是现阶段主要措施有,主要措施如下:
算法升级
AV1/H.265/VP9/H.264 等,AV1 刚定稿 AOM 编码性能相比其它 3 家 100 倍以上差距,由于核心成员有 Google/Amazon/Cisco/Netflix 等这些大佬以及定位对 web 的友好性,AV1 3 月刚完成 V1.0 的定稿以及 ffmpeg4.0 的支持,可以预见的是,后面硬件支持友好后,Netflix、Youtube 都将是第一批 AV1 的使用者,H.265 其复杂专利结构导致的较高许可费用,创立之初也未充分考虑到网页播放的友好性,更致命的是复杂的算法让解码端异常吃力,VP9 开源、WEB 兼容性也好、解码复杂度低,除 Apple 和技术原因外可能的理由之一就是业内也不太愿意让这么重要一个国际标准被一个独立的公司所控制。现在视频平台主流编码算法还是以 H.264 为主
普通转码
短视频和直播平台、视频网站对视频分源、超清、高清、流畅等不同档位,基本都是一些按分辨率和码率要求强制压缩转码,效果不理想都是以省码率为目标没有考虑用户观看体验
极速窄带高清
腾讯云极速高清、窄带高清以及 netflix 的动态编码都是基于场景、清晰度、分辨率、码率、帧率、编码算法、播放策略等目标在不降低甚至增强源视频画质体验的基础上降低视频码率
视频源和普通转码存在的问题
视频源和普通转码主要存在的质量问题有:转码失真、低分辨率模糊、镜头抖动、噪声大、低码率锯齿块等
极速高清是如何解决这些问题
视频智能分类
把视频分成游戏、秀场、体育、户外、动漫、美食、影视剧等十几个大类几十个小类场景,通过画面特征比较,明显场景类如游戏、足球、蓝球、动漫等场景,纯 CNN 网络模型准确率 98% 以上,电视剧、户外运动、美食、旅游等画面特征比较分散,帧间运动变化比较大的场景 CNN 结合 RNN+LSTM 做时域 + 空域分析,准确率 85% 左右
编码参数
通过视频场景分类实时识别(特殊直播场景识别延时大概有 10 秒 -60 秒左右),根据场景识别结果,不同场景配置不同最优编码参数,根据视频源码率、帧率、分辨率、纹理和运动变化幅度等情况以及综合机器负载和画质效果选择最优编码模板参数
前置处理
根据不同场景分类、客户对视频画质的不同要求,以及结合视频源画面纹理和实时运动检测结果进行锐化、软模糊、反交错、去块、降噪、色阶补偿、降帧等前置处理
动态优化
不同的视频类别,同一个视频里的不同段,应用完全不一样的编码参数;“不同的参数”的概念包括但不限于:IBP 帧类型、量化参数 QP、分辨率等,支持编码参数按帧实时更新生效
码率控制
不管是标准 H.264/JVT-G012 码率控制算法还是 x264 的码率控制算法在运动变化切换比较明显的场景下预编一次得到率失真理论凸曲线都是尽可能接近最优失真曲线,国内 CDN 带宽基本都是按 95 计费法,CDN 带宽采样点是 5 分种的均值,对于这种运动场景实时检测切换比较明显的场景帧我们在 x264 码率控制的基础上会综合帧时序信息做一些补偿因子和画质控制,画质 VMAF 得分会有 3 - 5 分以上的提高
如上图极速高清在 VMAF 得分相同情况下码率控制更低更精准。
detail reduce ☟
针对 h264 视频编码格式,设计了一种在视频残差的频域上消除噪声的算法。该算法结合了当前编码宏块的残差大小,宏块的 QP 值,历史的频域值等,并根据不同场景选择匹配的 video denoise 模板,自适应地进行宏块级的视频处理,能够以极低的 CPU 消耗对噪声宏块进行优化,同时保留清晰宏块的完整性
ROI 处理 ☟
SIFT+ 差分图像 + 运动目标图像检测或用户指定 (如台标、水印) 关注 ROI 区域,对该区域的宏块编码进行强化(放大 / 缩小量化步长)、锐化、色阶补偿等处理,如央视世界杯就要求对台标和字幕区域画质和亮度增强
VMAF 评分 ☟
VMAF 是 Video Multimethod Assessment Fusion 的缩写 netflix 开源的视频主观感受质量评估算法,看名字这就是一种多方法融合的算法,主要使用了 3 种指标:visual quality fidelity(VIF)、detail loss measure(DLM)、temporal information(TI)。其中 VIF 和 DLM 是空间域的也即一帧画面之内的特征,TI 是时间域的也即多帧画面之间相关性的特征。这些特性之间融合计算总分的过程使用了训练好的 SVM 来预测
基本原理流程图
从我们评估测试对比效果看 VMAF 得分和人眼主观感受画面质量很接近,基本能反应用户对画质的主观感受,当然 VMAF 在一些主要评估特性功能上还有很多功能不完全支持以及评估时要手动严格帧对齐也比较费精力,netflix 训练模型主要是在明亮的室内通过电视观看 1080p 视频时的质量评估。不过手机上的模型也在做了效果不是非常理想
github 地址:
https://github.com/Netflix/vmaf
极速高清主要基于 VMAF 的得分效果优化相关编码参数和算法调整效果
效果对比
上图是极速高清与普通转码和 xx 云窄带高清转码同码率下效果对比,总体我们测试效果和客户反馈对比效果看同码率下我们 VMAF 分比竞品和普通转码高 10 以分以上,同画质 VAMF 得分下我们码率最大能降低 30% 左右
另注:PSNR 和 SSIM 三大直接问题:
◆ 它只能衡量其与原图的差异也即相对质量,不能计算绝对质量
◆◆ 孤立地计算每一帧,无法利用视频中相邻帧的相关性和运动信息
◆◆◆ PSNR/SSIM 值的计算方法过于 straight-forward,结果跟人眼的主观感受并不总能匹配
客户反馈
极速高清现在应用主要客户有:熊猫、斗鱼、龙珠、虎牙、火猫、企鹅电竞、CCTV、新英体育等客户。且极速高清服务也可进行私有化部署,全程支撑 cctv.com 世界杯期间赛事直播
今天天气好晴朗,处处好风光,好风光……
皇天不负有心人,自从有了极速高清的应用,在游戏中分分钟吃鸡,瞬间成为部门的吃鸡高手,还有不少小迷妹让我带着吃鸡呢,迎来了人生的巅峰,哈哈哈哈哈哈
问答请问小程序即时通讯如何接入发送消息?相关阅读 IM 即时通讯实现原理 iOS 即时通讯 + 仿微信聊天框架 + 源码开发一款即时通讯 App,从这几步开始【每日课程推荐】机器学习实战!快速入门在线广告业务及 CTR 相应知识