首页 » 互联网 » H.265/HEVC视频编码:FPGA GPU QSV实现比拟_画质_紧缩率

H.265/HEVC视频编码:FPGA GPU QSV实现比拟_画质_紧缩率

落叶飘零 2025-01-03 08:39:08 0

扫一扫用手机浏览

文章目录 [+]

素材质量的增长,图像码流量也随之增长。
人们须要压缩率更好的压缩算法标准,才能够适应新的图像压缩需求:

同样的压缩率得到更好的画质同样的画质得到更好的压缩率

在这个大背景H.265/HEVC涌现了。
比较于上一代标准H.264,H.265更适宜大分辨率、高帧率的图像压缩;有着更好的压缩率和画质结果。

H.265/HEVC视频编码:FPGA GPU QSV实现比拟_画质_紧缩率 H.265/HEVC视频编码:FPGA GPU QSV实现比拟_画质_紧缩率 互联网

(测试结果引用自论文Comparative Assessment of H.265/MPEG-HEVC, VP9, and H.264/MPEG-AVC Encoders for Low-Delay Video Applications)

H.265/HEVC视频编码:FPGA GPU QSV实现比拟_画质_紧缩率 H.265/HEVC视频编码:FPGA GPU QSV实现比拟_画质_紧缩率 互联网
(图片来自网络侵删)

H.265/HEVC带来更好性能的同时,也意味着运算量的加大。
如何高效、实时的实现H.265编解码成为研究的热点。

C++音视频开拓学习资料:点击领取→音视频开拓(资料文档+视频教程+口试题)(FFmpeg+WebRTC+RTMP+RTSP+HLS+RTP)

2. H.265/HEVC算法简介

H.265/HEVC包括帧内预测(intra prediction)、帧间预测(inter prediction)、转换(transform)、量化(quantization)、去区块滤波器(deblocking filter)、熵编码(entropy coding)等模块。

和H.264类似,帧内预测、帧间预测、滤波运算都须要大量的并行打算。

在H.265/HEVC编码架构中,整体被分为了三个基本单位,分别是编码单位(coding unit, CU)、预测单位(predict unit, PU)和转换单位(transform unit, TU)。
更灵巧的宏模块划分给压缩率、画质带来了很大的提升。
同时也给运算增加了难度,对并行化运算、灵巧化运算提出了更高的运算。

3. FPGA H.265/HEVC解码

列举两个H.265/HEVC FPGA IP作为例子。

NGCodec

高画质版本IP特点:

等效于x265 Medium或者Slow配置的画质支持I/P/B帧,同等画质下有更低的压缩率可配参数look-ahead – Adaptive Quantization,提高压缩率支持Multi-stream encoding for ABR (Adaptive Bitrate Encoding),针对不同条件的播放终端,可以天生多种分辨率和码率的压缩结果采取Temporal Motion Vector Prediction (TMVP) ,提高画质和压缩率10bit 4:2:0 (HDR support)最高支持1080p60,4k@30

对应x265的“very slow”配置结果,NGCodec编码器能够达到1080p60(60帧/秒)的处理能力,远大于x265的3帧/秒。

对付相同画质下的压缩率比拟如下图,采取“Ducks taking Off”1920x1080素材。
可以看到NGCode HEVC编码器在压缩率和画质上均优于x265 Medium 设置下的结果。

IP面积如下表。
目前在VU9P上可以放下1套高画质版本的HEVC Encoder,占用资源50%。
优化过后可以放下2套。

System-On-Chip (SOC) Technologies

IP特点:

Profile: Main 4:2:2 12最高支持1080@60,4k@30支持I/P帧HD旗子暗记25ms延时,4k旗子暗记50ms延时固定码流/可变码流输出

资源花费如下表。
Xilinx VU9P有1182240个LUT,初步估算可以放下6套标准版本HEVC Encoder。

C++音视频开拓学习资料:点击领取→音视频开拓(资料文档+视频教程+口试题)(FFmpeg+WebRTC+RTMP+RTSP+HLS+RTP)

4. GPU H.265/HEVC 编码

GPU 某些型号内部有硬核来支持视频编解码单元。
以Nvidia Tesla P4为例,它包括NVENC和NVDEC两个硬加速单元分别给视频压缩的编码、解码供应加速做事。

NVENC硬编码器特性如下:

支持4:4:4,4:2:0;4:2:2不支持不支持B帧,压缩率会有负面影响分辨率最大支持到8K支持1-pass, 2-pass模式NVENC不支持VP8、VP9,VC1等其他标准,不具备扩展和升级的可能

对付10bit视频,每个NVENC可以编码1路4K@30fps 4:2:0,或者5路1080p30 4:2:0。

Nvidia Tesla P4 有2个NVENC和1个NVDEC,可以编码2路4K@30fps,10路1080p30,换算成1080p60,是5路旁边。

相同的画质情形下,Nvidia NVENC压缩完的bitrate是x265的2.5倍

5. Intel QSV H.265/HEVC编码

QSV (Quick Sync Video)是Intel的硬件编解码技能,可以有效降落CPU的负载。
ffmpeg供应对QuickSync的完全支持。

下图显示了在单片Intel® Xeon® processor E3-1285L v4 上利用x_qsv能够支持的视频编码的通道数量,输入格式为1080p30。

对付HEVC的编码,采取fast preset,只能支持一个通道1080p30。

对付各个画质preset设置下,帧率和bitrate结果如下图所示:

QSV和x265有相似的均匀bitrate,如下图所示。

C++音视频开拓学习资料:点击领取→音视频开拓(资料文档+视频教程+口试题)(FFmpeg+WebRTC+RTMP+RTSP+HLS+RTP)

6. FPGA & GPU & QSV比拟

H.265/HEVC在各个场景下推举的配置如下:

结合上述配置推举,列出一部分配置比较如下。
FPGA 版本可配置参数和功能明显多于GPU版本。

在相同画质下,压缩率越大越好,即bitrate越小越好。
根据之前章节提到的数据,归总为如下图表。

可以看到FPGA NGCodec处理有最小的bitrate,仅为GPU处理的1/3,意味着存储本钱可以低落2/3。

处理能力, 通道数比较。

7. 总结

对付H.265/HEVC编码处理,FPGA方案有着最完善的功能和preset配置,支持最多的有利于提高画质和降落bitrate的功能,适宜各个场景下H265/HEVC的编解码配置。

同时具有灵巧支配,易于升级的特点,非常随意马虎就可以在某一个平台长进级IP特性,乃至根据需求,随时改换成其他协议的编解码功能。

FPGA的可扩展性也是GPU不可比拟的,能非常随意马虎的在同一块FPGA上pipeline支配编解码干系的高下游运用;同时,由于FPGA之间的高速互联特性,也可以方便地在不同FPGA、不同FPGA板卡间支配完全的干系运用方案。
(参考《Ali Cloud FPGA集群拓扑构造》https://www.atatech.org/articles/104152)

本钱方面,高画质IP虽然通道数量上并不占上风,但是带来的bitrate的大幅降落,可以显著降落带宽本钱、存储本钱,综合本钱是降落的;同时,有一些FPGA编解码IP也可以实现不输乃至优于GPU的通道处理能力。

在视频编解码领域,FPGA有着非常大的潜力和广阔的前景。

标签:

相关文章

C语言地址探幽,介绍内存管理的奥秘

C语言作为一门历史悠久、应用广泛的高级编程语言,其底层对内存管理的处理一直是程序员们关注的焦点。在C语言中,地址作为内存管理的关键...

互联网 2025-01-05 阅读0 评论0

C语言大奖赛,编程艺术的盛宴与启示

C语言,作为计算机编程语言的鼻祖,自诞生以来就以其简洁、高效、可移植性强等特点深受开发者喜爱。C语言大奖赛,作为全球最具影响力的编...

互联网 2025-01-05 阅读0 评论0