火山引擎 BVE 视频图片硬件编码器演进之路

这篇具有很好参考价值的文章主要介绍了火山引擎 BVE 视频图片硬件编码器演进之路。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

动手点关注

火山引擎 BVE 视频图片硬件编码器演进之路

干货不迷路

前言

近日,第 17 届世界编码器大赛 MSU 2022 公布硬件编码器比赛结果,在 60 fps(帧率)的超快视频编码赛道上,火山引擎多媒体实验室自主研发的 BVE 1.1 编码器表现突出,荣获最佳 FPGA 编码器(各项指标大幅领先);并在所有硬件编码器中,技术指标获得一项第一和两项第二,技术能力达到行业领先水平。

MSU 编码器比赛是由国际机构主办和测评,是视频编码业内影响力最大的国际比赛。

火山引擎 BVE 视频图片硬件编码器演进之路

MSU 2022 视频硬件编码器大赛 60 fps 赛道比赛结果

背景

随着 5G、互联网等技术不断发展,以及半导体工艺的不断进步,电子产品的性能得到持续提升,基于视频内容的应用不断涌现,如抖音、爱奇艺、Bilibili、以及 Youtube 等。另一方面,相对于传统的文字图片内容,视频内容的传输需要更大的网络带宽。而随着消费者对于高清视频需求的指数级增长,如何解决用户需求和网络带宽的矛盾逐渐成为视频应用普及和进步的最大挑战。在众多视频技术中,视频压缩是解决带宽限制最为关键的技术。

视频压缩主要利用视频内容中存在的时间和空间冗余,以更小的码流进行视频内容的传输。视频压缩技术和标准也在不断进步中,如最新的 VVC 标准,编码性能相较前一代提升超过 50%,而计算复杂度则至少提升 5 倍以上。主流的视频压缩解决方案主要分为软件编码器和硬件编码器两种。其中软件编码器主要由 CPU 实现,硬件编码器包括 GPU,FPGA,以及 ASIC 三种方案。相较于软件编码器,硬件编码器具有更高的计算密度,更高的吞吐率,更低的延时和计算成本等优势。为了实现低延时、低码率、高画质、可持续的视频应用,采用硬件编码解决方案成为一种必然的选择。

团队简介

火山引擎多媒体实验室视频芯片团队从零开始建立了数据中心高密度硬件视频编码解决方案,包括算法开发及优化、硬件架构设计及验证、固件及软件开发等。团队在短时间内从零到一完成了多款硬件编码方案的设计以及部署,包括 FPGA HEIF 图片编码器、FPGA 视频编码器 BVE 1.0、及 BVE 1.1 等。其中 FPGA HEIF 图片编码器已经成功部署数千片,全面覆盖了抖音集团旗下抖音、头条、西瓜视频等的各个HEIF静图、动图业务场景。FPGA 视频编码器 BVE 1.0 和 BVE 1.1 连续两年获评 MSU 最佳 FPGA编码器,编码性能大幅领先行业平均水平。

架构设计

视频转码整体架构

BVE硬件编码方案设计充分考虑到了硬件方案的兼容性以及火山引擎转码服务流程,极大地简化了硬件方案实现替代的难度。自主设计的转码器架构不仅兼容业界标准FFMPEG API框架,同时支持火山引擎自研的业户调度系统,从而实现了对点播,直播,云游戏,图片编码等不同业务场景的无缝支持,减少了新产品从开发到业务落地的周期。

火山引擎 BVE 视频图片硬件编码器演进之路

视频转码整体架构图

火山引擎转码流程主要由三个核心模块组成:

  • Host Server: 运行ffmpeg,集成图片、视频相关处理API,通过PCIe 跟编码器和解码器通讯,实现对编解码的控制, 同时对解码出来的YUV做相应的前处理,例如画质增强,锐化,降噪,插帧, ROI, CAE等, 并且通过ffmpeg API对音频部分做相关的编解码,实现对音频和视频的同步耦合等;

  • 解码器(Decoder): 对于FPGA方案,采用ffmpeg自带的软件解码器,支持了不同格式的解码, 并对解出的YUV 做格式转换,缩放等后处理后存入DDR, 提供给编码器进行编码;

  • 编码器 (Encoder): 采用自研的FPGA BVE 1.1 架构设计, 加入各种自适应算法, 实现了低延时、低码率、高画质视频压缩,达到行业硬件编码器性能的领先水平。

编码核心算法

编码核心算法方面,针对移动互联网应用的特性,采用定制化以及自适应算法解决方案,加入视频图像中各种统计数据,优化编码参数配置,从而达到极致的编码效率。

BVE编码算法设计中引入了多种自适应编码算法,包括自适应色度增强、运动补偿时域滤波、ROI编码、以及锐化增强等。其中,ROI的引入能极大的提升主观质量,并有效降低码率。锐化增强可以有效地提升视频清晰度,及用户画质体验。运动补偿时域滤波可以根据帧间相关性去除用户上传视频中的原有噪声,从而提升编码效率。自适应色度增强可以根据视频内容自动调整色度分量的码率大小,保持相同视频质量的同时提升编码效率。

MSU比赛结果显示,BVE FPGA编码器整体编码性能比行业标准编码器(GPU)提升30%,与行业最优的ASIC编码器相当。在60 fps 超快视频编码的客观质量评比中,火山引擎与腾讯、快手、Intel、Bluedot等参赛队伍排名前列。在同期参赛的多款不同类型的硬件编码器产品中,火山引擎 BVE 1.1 不仅荣获最佳FPGA硬件编码器,同时在主观质量(YUV-VMAF)上更是领先其他所有硬件编码器。

火山引擎 BVE 视频图片硬件编码器演进之路

文章来源地址https://www.toymoban.com/news/detail-459604.html

‍MSU 2022 视频硬件编码器大赛 60 fps 赛道YUV-VMAF结果

编码硬件架构

硬件架构方面,BVE编码器采用全新的编码器硬件架构设计方案,不仅内嵌多种优化的编码预分析和预处理模块,而且支持多种编码模式,如并行编码、低延时编码等,能够很好地适配多种应用场景,以较小的硬件代价实现编码性能和视频质量的最大化。

编码器架构设计方面,核心模块全面采用可配置的编码参数设计方案,支持端到端的自适应优化。首先,BVE编码器采用多层次的运动搜索方式,支持搜索范围动态调整,不仅能够实现精确的运动估计,同时优化硬件吞吐率。其次,BVE编码器支持全并行的率失真优化设计,精确的码率估计,以及优化的量化编码,能够实现最大化编码性能和吞吐率。BVE编码器硬件内部定制的DMA进一步优化内存数据存取效率,降低软硬件通信延时,提高带宽利用率和编码器吞吐率等。

BVE硬件编码器架构设计已经过大量实验以及应用验证,如HEIF以及FPGA等,不仅具有编码性能优异,吞吐率高等优点,同时具备支持自适应优化特性,可无缝衔接抖音集团主要产品。

写在最后

FPGA BVE及HEIF编码器目前已广泛应用于今日头条、抖音、西瓜视频等抖音集团旗下产品的图片和视频业务,及火山引擎图片业务toB产品veImageX中。高性能的BVE硬件编码器除了支持主流的转码、直播等应用外,由于具有低延时、高吞吐、低成本等特点,也为更多创新的视频应用提供可能性。

多媒体实验室简介

火山引擎多媒体实验室是字节跳动旗下的研究团队,致力于探索多媒体领域的前沿技术,参与国际标准化工作,其众多创新算法及软硬件解决方案已经广泛应用在抖音、西瓜视频等产品的多媒体业务,并向火山引擎的企业级客户提供技术服务。实验室成立以来,多篇论文入选国际顶会和旗舰期刊,并获得数项国际级技术赛事冠军、行业创新奖及最佳论文奖。‍

到了这里,关于火山引擎 BVE 视频图片硬件编码器演进之路的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 最简单的基于 FFmpeg 的视频编码器(YUV 编码为 HEVC(H.265))

    参考雷霄骅博士的文章,链接:最简单的基于FFmpeg的视频编码器-更新版(YUV编码为HEVC(H.265)) 前一阵子做过一个基于 FFmpeg 的视频编码器的例子:最简单的基于 FFmpeg 的视频编码器(YUV 编码为 H.264)。 在该例子中,可以将 YUV 像素数据(YUV420P)编码为 H.264 码流。因为 FFmpeg

    2024年04月27日
    浏览(53)
  • H265、VP9、AV1视频编码器性能对比

    目前在视频编解码器中,H264 已经成为绝对的主流,被大部分设备、浏览器所支持。虽然有更先进的编码器推出,但是受限于推广速度和设备支持成本,一直未能成为主流。 今年公司的目标是持续降本增效,现在将”屠刀“指向了视频业务的存储成本。视频文件存储主要两块

    2024年02月03日
    浏览(49)
  • 7、江科大stm32视频学习笔记——中断的应用:对射式红外传感器计次&旋转编码器计次

    目录 1、标志位函数 2、 初始化的中断的步骤 3、对射式红外传感器计次 (1)接线图 (2)CountSensor.c (3)main.c 4、旋转编码器计次 (1)接线图(旋转编码器接在PB1、PB0引脚) (2)Encoder.c (3)main.c 5、建议 //在 主程序 中查看标志位和清楚标志位,用以下两个函数,能不能

    2024年02月11日
    浏览(46)
  • 用于无监督视频异常检测的合成伪异常:一种简单有效的基于掩码自动编码器的框架 论文阅读

    论文标题:SYNTHETIC PSEUDO ANOMALIES FOR UNSUPERVISED VIDEO ANOMALY DETECTION: A SIMPLE YET EFFICIENT FRAMEWORK BASED ON MASKED AUTOENCODER 文章信息: 发表于:ICASSP 2023(CCF B) 原文链接:https://arxiv.org/abs/2303.05112 源码:无 由于用于训练的异常样本的可用性有限,视频异常检测通常被视为一类分类问题

    2024年02月04日
    浏览(51)
  • 利用第三方解码器ffmpeg让群晖DSM6.2.4版本的Video Station支持DTS视频编码和EAC3音频编码

    截至2022年5月6日,此方法可用! 本文章可以解决群晖版本6.2.4-25556 Update5(Video Station版本2.5.0-1656)在播放dts、eac3音频编码的视频时提示不支持的问题。 对于群晖6.2.3版本,Video Station版本2.4.9,网上随便搜的方法都可以使用,但是用在6.2.4未必可行。原因在于Video Station版本2

    2023年04月08日
    浏览(42)
  • 编码器 | 基于 Transformers 的编码器-解码器模型

    基于 transformer 的编码器-解码器模型是 表征学习 和 模型架构 这两个领域多年研究成果的结晶。本文简要介绍了神经编码器-解码器模型的历史,更多背景知识,建议读者阅读由 Sebastion Ruder 撰写的这篇精彩 博文。此外,建议读者对 自注意力 (self-attention) 架构 有一个基本了解

    2024年02月08日
    浏览(63)
  • 【FPGA】Verilog:编码器 | 实现 4 到 2 编码器

    0x00 编码器(Encoder) 编码器与解码器相反。当多台设备向计算机提供输入时,编码器会为每一个输入生成一个与设备相对应的信号,因此有多少比特就有多少输出,以数字形式表示输入的数量。 例如,如果有四个输入,就需要一个两位二进制数来表示 0 至 3,这样就有四个输

    2024年02月04日
    浏览(55)
  • 旋转编码器原理、选型及编码

    旋转编码器(rotary encoder)也称为轴编码器,是将旋转的机械位移量转换为电气信号,对该信号进行处理后检测位置速度等信号的传感器。检测直线机械位移量的传感器称为线性编码器[1]。一般装设在旋转物体中垂直旋转轴的一面。 旋转编码器用在许多需要精确旋转位置及速

    2024年01月19日
    浏览(42)
  • AE(自动编码器)与VAE(变分自动编码器)的区别和联系?

    他们各自的概念看以下链接就可以了:https://blog.csdn.net/weixin_43135178/category_11543123.html  这里主要谈一下他们的区别? VAE是AE的升级版,VAE也可以被看作是一种特殊的AE AE主要用于数据的 压缩与还原 ,VAE主要用于 生成 。 AE是将数据映直接映射为数值 code(确定的数值) ,而

    2024年02月03日
    浏览(75)
  • 解码器 | 基于 Transformers 的编码器-解码器模型

    基于 transformer 的编码器-解码器模型是 表征学习 和 模型架构 这两个领域多年研究成果的结晶。本文简要介绍了神经编码器-解码器模型的历史,更多背景知识,建议读者阅读由 Sebastion Ruder 撰写的这篇精彩 博文。此外,建议读者对 自注意力 (self-attention) 架构 有一个基本了解

    2024年02月08日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包