您好、欢迎来到现金彩票网!
当前位置:PC蛋蛋 > 最优编码 >

手淘H265编解码算法与工程优化

发布时间:2019-07-10 09:48 来源:未知 编辑:admin

  手淘的产品目前已经拓展到直播、短视频等领域,业务中存在着大量的图片和视频;自2015年起,图片和视频的数量呈指数级别高速增长;并且随着网络技术的发展与消费升级,用户对图片和视频清晰度的要求也不断提升,从最早的360P到现在的4k甚至8k,这些都带来了宽带成本与成本的大规模提升,这也就是为什么我们希望借助H265技术支持音视频业务的良性发展。

  借助H265技术我们可以实现大规模并发场景下音视频业务的有效成本控制。带宽与存储成本不容小觑,与H264相比,以典型4K场景中使用H265技术为例,可在保持画质不变的同时节省达50%的带宽,而以720P直播为例使用H265则可节省30%流量。现在的流量有90%以上都来自移动端(手机)而非传统意义的PC、服务器、Pad等;而对手机端尤其是Android设备而言,碎片化带来的计算能力受限、性能层次不齐等问题使得H265上的很多优化与功能受到限制。如果我们直接将H265应用于手机端则会在解码时出现发热大、能耗高、实时编码无法正常进行等现象;与此同时,也缺少快速、高效且成熟的端上编码方案,这些都是亟待我们解决的问题。

  接下来介绍下H265的编码框架。H265编码框架由四个模块组成:输入一段视频的连续多帧,首先需要经过的是包含帧内预测、帧间预测两个操作的预测模块;随后进行变换量化模块也就是针对原始图像块与预测图像块的差值进行DCT和量化;接下来解码模块会将图像解码以便用于下一帧的预测;最后的熵编码模块将针对预测信息和残差系数进行算数编码从而进一步消除编码冗余。

  H265主要有哪些技术亮点?首先H265具有灵活的编码结构,拥有CUPUN、CTUN等多个细分编码单元;其次H265的块大小也非常灵活,包括4×4、8×8等更多块划分方式;除此之外,H265的Sample Adaptive Offset(SAO)技术相对于Deblock和ALF具有更高性价比;最后在整个H265中包含了并行化设计,使得H265的优势更加明显。

  除了以上技术亮点,H265相比于H264 在插值、MV预测、帧内预测、变换、去块滤波等方面进行了大量改进与优化。上图右侧表展示的是H.265相对于H.264在多方面带来提升的量化数据。

  H.265为音视频带来了技术提升,与此同时也带来了不容忽视的改进代价。码流的节省意味着计算复杂度的提升,从上图右侧的统计表中我们可以看出,相对于H264,H265的编码复杂程度增加了约3到4倍,解码复杂程度也增加了近50%。这就意味着传统的针对H.264的软硬件解决方案处理H.265会明显感到力不从心,我们需要妥善解决因方案升级带来的诸多技术挑战。

  即便如此,H.265的优势也不容忽视。上图展示的是我们在2017年开展的一项调研,以当时比较成熟的金山HEVC解码器为例,对比标准H.265解码器,无论是在解码速度还是解码质量上金山的HEVC解码器都有很大优势,这项调研结果也让我们对H.265的未来发展更加充满信心。

  手淘在H.265编解码领域作出了哪些探索?我们的优化探索主要分为两部分:算法优化与工程优化,而算法优化主要集中在RDO方向。由于HEVC支持不同的CTU/CU/PU/TU组合模式,可选编码模式激增;搜寻最优编码模式时,随着编码模式数量的增加,率失真计算会成为编码过程的计算瓶颈,这主要是由于传统H.264中基于SATD的率失线中使用,需要精度更高的失真代价计算。为了优化RDO以实现更高效的处理效果,我们进行了以下7项改进:

  如果统计H.265中一个图像可以选择的所有划分模式,一个块有高达384种可选择的划分模式。只有计算完成所有选择后才能确定最佳划分方案,如何缩短计算如此多选择所需要的时间?

  首先,由于每块的划分层级与划分深度和当前块的参考帧块之间有很强的相关性,利用时间和空间的相关性,我们可从参考块的深度预估本块的深度范围并得到Min-depth与Max-depth;其次,即使本块与上一块或参考块有相关关系,本块也有一些自己独有的信息可被利用,我们可通过结合本块的运动与纹理信息界定深度的精度范围,确定具体划分深度的精度范围。

  通过对图像纹理的检测我们可快速选择最优的划分模式。迅速识别平坦或对比度较强的纹理,提升划分效率。

  应对带Corner的纹理时,可通过按照强度判决是否继续划分来实现快速选择,这对线性变化的处理效果较好,而在实际应用中我们需要面对很多非线性变化的应用场景,此时就需要CNN卷积神经网络+深度学习的模型对非线性变化进行纹理分类与快速模式选择,这里的线性分析与非线性分析是分开进行的。

  AZB(All Zero Block)是量化后系数为全0的块,通过AZB提前判别决策可对块进行快速归类,从而减少D与R的计算。

  纵览整个劣势帧的计算过程 ,计算Dp需原图到重建图像间的SSE,也就是完成编码模式P的预测、变换、量化、反量化、反变换、重建等。为避免这样冗长而复杂的计算过程,我们可以在变换与量化后在频域计算残差能量;而码率统计 则是通过一次熵编码实现,为了提高计算效率我们可以对残差数据的码率统计建立线性估计模型并根据NxN变换矩阵量化后的特征估计其码率,可减少近50%的计算量。

  这里我们主要进行的优化是,通过整像素点及1/2像素点的SAD值和其坐标来估算出最优1/4像素点,从而加速整个搜索过程。

  我们采用了基于贝叶斯模型开发的一套帧内预测快速决策方法,可为帧内预测速度带来一倍的提升并将损失降低到0.01dB。

  我们知道,参考帧大都在一个GOP范围内,往往有更好的编码质量,参考帧有助于提高被参考帧的质量,而长期参考帧可能源于多个GOP。这就使得对于背景很少发生变化的直播场景,长期参考帧可有效减少信息经过多帧传递带来的损失,引用长期参考帧可将平均EV提高大概0.25dB,

  上图展示的是各模块计算量占比,以上就是我们围绕RDO领域进行的多项探索。

  基于工程方面我们也进行了多项优化,首先是针对一些特殊函数的汇编计算优化,我们通过采用NEON指令集优化,为典型计算性能带来2~4倍的提升,如RDO(SSE、SAD)模块、运动搜索模块、帧内预测模块等均提升两倍以上;其次,针对现在移动端广泛使用的多核处理器,我们优化多核并行计算并适应现代处理器的架构;除此之外,我们也优化bottleneck的指令和访存,从而进一步提升整体性能。

  经过算法与工程两个层次上的优化,我们为HEVC编解码带来了明显的性能提升。就编码速度而言,手淘比X.265 17年初的版本提升3倍以上并可在iPhone6上实现720P&30帧的实时编码;若想实现相同的编码质量,手淘的编码码率相对于X.265降低了至少15%,上图展示的便是具体的测试结果。

  软解优化更多集中在工程方面也就是NEON指令集部分,较少在算法层面进行调整。通过对NEON指令集的优化与一些逻辑上的改写,手淘可实现相对于FFmpeg提升150%以上的视频解码速度,例如将1Mbps 720P H.265的测试用例用于小米5手机进行解码测试,其解码速度可达两百帧以上,而CPU的占用率也控制在20%以下;在处理图片方面,例如对H.265的标准I帧处理上我们也做出了不少优化和改进,APG的图片解码速度相对于FFmpeg提升70%以上。

  这里我们对视频编码标准的未来进行简单的展望。过去10年大家都是按照H.264、H.265的标准;而在流媒体渐成趋势的未来,Google提出的VP8、VP9、VP10,还有H.266、AV1等标准将推动音视频行业向更光明的未来发展。技术的进步为我们实现更多更新潮的效果打下基础,助力消费升级与用户体验的日渐完善。

  如果简单对比H.266与AV1我们可以看到,因为H.266引入了更多的四叉树二叉树结构(QTBT),整体的BD-Rate提升近4%;但H.266对比H.265,在保持画质不变的情况下码流降低了近1倍而整体编码时间却增加了2倍左右,整体解码时间则增加近1倍。基于之前的调研我们发现,AV1的时间复杂度是X.265的2000~3000倍,这说明AV1未来的改进与优化任重而道远。

  A:我认为VP9当前存在最大的妨碍其普遍推行的问题是兼容性,因为现在很多设备都采用向下兼容的策略,而VP9在诸多设备上的普及率不高;如果大家在直播等领域使用VP9进行编码则必须经过转码之后才能通过CDN分享,随后重新转成H.264或H.265再播放,这样势必会带来很多麻烦。

  A:现在的一些高端手机已经可以实现性能稳定的硬编H.265,例如对iOS而言,iPhone7以上的机型都可稳定实现。但在较为碎片化的安卓机型上,由于安卓机型解码时对多种协议的支持力度不统一,加上不同档次的手机性能差距过大,编码性能受到很大影响。手淘上主播的机型主要是ios,所以在淘宝上我们主要采用硬编方案;而对于直播环境,因为需要CDN进行内容分发,而CDN重点支持的链路基本属于H.264,编码方式受限于整个直播的链路环境。

  文章出处:【微信号:livevideostack,微信公众号:LiveVideoStack】欢迎添加关注!文章转载请注明出处。

  本文档的主要内容详细介绍的是如何使用51单片机红外通信解码的详细教程免费下载。

  SHARC系列DSP已通过12声道解码输出认证,可以解码Atmos、DTS:X、Auro3D等基于对....

  许多患有神经疾病的患者因丧失语言能力,需要依赖特定的通讯设备进行沟通,这类设备利用脑机接口或者头部、....

  说话,看起来是一件毫不费力的事情。但事实上,说话却是人类执行的最复杂的活动之一。它需要精确、动态地协....

  嵌入式代码编码规范,用于规范自己的代码,增强可读性,非标准规范。最好能强制自己形成良好的编码风格,有....

  嗨,我正在做我的最后一年计划。 这不是完全连接到PSoC,但我试图解码门切斯特编码信号从ASIC使用PSoC。 解码器按预...

  各位大神,我解码的过程中出现以下m3video的错误,请问错误码0x12001和0x401是什么含义呢?谢谢! [m3video] 325356:DECLI...

  附件是对录文件您听听看 我用的是您的综合历程里的解码算法407的片子 (973...

  战略思考是一门艺术,战略管理是一门科学,有效的战略规划就是艺术和科学的有机结合。

  通过机器学习,视频的分析、理解和压缩之间的连接会更加紧密。基于机器学习的视频的重建技术,也将在视频编....

  例如dts5.1和dolby5.1这些解码有开源吗?如果有的话请问从哪里可以获得?...

  本文档的主要内容详细介绍的是用于MPEG4解码的源代码详细资料合集免费下载

  请问cs+建的工程与e2studio建的工程能一样吗?cs+能打开e2studio建的工程吗?

  cs+建的工程与e2studio建的工程能一样吗?cs+能打开e2studio建的工程吗?...

  解码264数据后,请问能否直接使用hdmi display link来显示?

  解码264数据后,能否直接使用hdmidisplay link来显示 目前设备必须做一个420 到 422的转化,才能display 但是这...

  尝试了6437和648的dvsdk开发套件,h264中解码编码都为在屏幕的右上角加上ti的logo,请问怎么去掉这个logo?

  尝试了6437和648的dvsdk开发套件,h264中解码编码都为在屏幕的右上角加上ti的logo,就如我在附件中的图。 文档中写了,因为是...

  在本文中,我们比较了三种不同的实现方案在3G无线软件的方法,使用DSP,硬件方法使用ASIC,并结合....

  1 前言本文将介绍使用CubeMx工具从零开始制作一个基于SD卡的文件系统,以便后续使用此功能者参考。2 准备工作本文工程得测试...

  被称为“多媒体技术领域的瑞士军刀”,FFmpeg拥有广泛的应用基础。不过,当(实时)处理海量视频时,....

  本文主要对pt2262解码学习进行了总结。PT2262解码器的发射电路由PT2262编码器和无线发射....

  移动互联网时代的到来,高清多媒体视频的普及,3D大型手机游戏对的出现,单核嵌入式硬件平台已经难以满足....

  随着视频压缩技术的不断发展,单路1080p@60Hz分辨率的视频可以压缩到几兆进行传输,一个百兆网口....

  在大规模天线系统中,基站端采用大规模天线阵列,天线数目可能是几百或者更多,而用户只有一根天线,且基站....

  网格中的每一列都显示了可能的的天气状态,并且每一列中的每个状态都与相邻列中的每一个状态相连。而其状态....

  摘要:哈夫曼编码作为一种编码方式,已经在生活中得到了实际的运用,下面我们以java实现的哈夫曼编码....

  Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。例如,在Java ....

  现代轿车大都装有高档音响,而大约有 80%的音响系统属于原装防盗音响。 音响防盗的基本原理是车主通过....

  数字示波器的发展极大的降低了低速总线调试的难度,无论是IIC、SPI还是CAN、LIN等,示波器都可....

  全球领先的视频监控的半导体制造商 - 海思半导体一直专注于研发新一代HEVC / H.265超,提供....

  美国安霸公司致力于低功耗高清(HD) 和超高清( Ultra HD video )视频领域, Amb....

  用PT2248,GI3276A和AT89C205I等组成的遥控键盘的软硬件设计,用单片机代替专用的解....

  日前,在美国奥兰多世界顶级视讯展上,中兴通讯率先展出支持H.265技术的高清终端产品。H.265实时....

  本节介绍图像压缩编码的基本原理,图像数据压缩和解压缩电路的基本结构。它们是看影碟机电路图的基础知识。....

  本文从数字音频压缩技术和VLSI 技术近些年的发展介绍出发,强调了数字音频压缩技术的发展离不开VLS....

  结合RS码的基本特性,讲述了RS码的编解码过程,给出了经过实际验证的RS编解码在超短波跳频电台开发中....

  介绍了红外遥控发射和接收的原理 提出了一种用PLD器件可编程逻辑器件进行解码的方案. 该方案思路新颖....

  本文详细介绍了基于A T 89C52 单片机的红外线遥控解码的基本工作原理, 并对其在硬件设计、软件....

  红外遥控发射芯片采用PPM编码方式,当发射器按键按下后,将发射一组108ms的编码脉冲。遥控编码脉冲....

  AVR单片机是Atmel公司推出的一个单片机系列。由于该系列单片机的集成度高,因此,其软/硬件设计都....

  随着多媒体技术的迅猛发展, 数字音频 技术也快速发展起来。MP3是一种有损音频压缩编码,其压缩程度很....

  分析了LSI 公司生产的L64724 数字视频卫星解码芯片的内部电路功能和性能特点,给出了L6472....

  设计了一种基于 STM32 处理器的便携式 BMP 图片解码系统。在设计过程中采用了从SD卡中读取编....

  分析MP3解码库的解码流程和数据流向,提出了嵌入式MP3解码研究与优化,实现了嵌入式系统解码性能的提....

http://caviarchef.com/zuiyoubianma/218.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有