2022 年 GTC 发布的下一代 NVIDIA GPU ,即 NVIDIA -GeForce RTX 40 系列、 NVIDIA RTX 6000 Ada generation 和数据中心的 NVIDIA L40 ,均采用新的 NVIDIA Ada 架构构建。
NVIDIA Ada 架构具有第三代光线跟踪核心、第四代 Tensor 核心、多视频编码器和新的 Optical Flow 加速器。
为了让您能够充分利用新的硬件升级, NVIDIA 宣布了视频编解码器 SDK 和 Optical FlowSDK 的随附更新。
NVIDIA 视频编解码器 SDK 12.0
AV1 是最先进的视频编码格式,与流行标准 H.264 相比,它提供了显著的性能提升和更高的保真度。在 NVIDIA 安培体系结构上引入的视频编解码器 SDK 扩展了对 AV1 解码的支持。现在,有了视频编解码器 SDK 12.0 , NVIDIA Ada 代 GPU 支持 AV1 编码。
图 1.AV1 和 H.264 的 PSNR 与比特率的比较
硬件加速 AV1 编码是 AV1 向新标准视频格式过渡的一个巨大里程碑。图 1 显示了 AV1 比特率节省如何转化为令人印象深刻的性能提升和更高保真度的图像。
峰值信噪比( PSNR )是一种视频质量度量。为了达到 42 dB PSNR , AV1 视频的比特率为 7 Mbps ,而 H.264 的比特率高于 12 Mbps 。在所有分辨率中, AV1 编码的平均效率比 H.264 高 40% 。这一基本性能差异为 AV1 打开了支持更高质量视频、更高吞吐量和高动态范围( HDR )的大门。
图 2.与 H.264 相比, AV1 的比特率节省
如图 2 所示,在 1440p 和 2160p 时, NVENC AV1 的效率是 NVENC H.264 的 1.45 倍。这种新的性能余量使图像质量比以往任何时候都高,包括 8k 。
AV1 的优点最好与 NVIDIA Ada 架构上的多编码器设计结合使用。视频编解码器 SDK 12.0 在具有多个 NVENC 的芯片上是新的,处理负载同时均匀分布在每个编码器上。这种优化大大减少了编码时间。多个编码器与 AV1 格式相结合,使 NVIDIA Ada 能够实时支持难以置信的 8k 、 60 fps 视频编码。
FRUC 库内部
下面简要说明 FRUC 库如何处理一对帧并生成插值帧。
一对连续的帧(前一帧和后一帧)被输入 FRUC 库。
使用 NVIDIA Optical Flow API ,生成正向和反向流矢量图。
然后,使用前后一致性检查验证图中的流向量。未通过一致性检查的流向量将被拒绝。此图中的黑色部分是未通过前后一致性检查的流向量。
图 6.验证和拒绝的流向量
使用可用的流矢量和先进的 CUDA 加速技术,生成更精确的流矢量以填充被拒绝的流矢量。图 7 显示了生成的填充流矢量图。
图 7.填充流矢量图
图 8.带有灰色区域的新插值帧
使用两个帧之间的完整流向量映射,该算法在两个输入帧之间生成插值帧。这样的图像可能包含几个孔(没有有效颜色的像素)。 这张图显示了马头附近和天空中的一些小灰色区域,这些区域是洞。
使用图像域孔填充技术填充插值帧中的孔,以生成最终插值图像。这是 FRUC 库的输出。
调用应用程序可以将此插值帧与原始帧交错,以提高视频或游戏的帧速率。
最后,为了扩展可以利用 NVOFA 硬件的平台, Optical Flow SDK 4.0 还引入了对 Windows Subsystem for Linux 的支持。
跨多硬件 NVENC 的 AV1 编码实现了下一代视频性能和保真度。广播平台可以获得更高的实时流分辨率,视频编辑器可以以 2 倍的速度导出视频,所有这些都是由视频编解码器 SDK 实现的。
NVIDIA Video Codec SDK 12.0 将于 2022 年 10 月从 NVIDIA 开发中心下载。
NVIDIA Optical Flow 4.0
新的 NVIDIA Optical Flow SDK 4.0 版本引入了引擎辅助帧速率提升转换( FRUC )。 FRUC 通过使用光流矢量插入插值帧,从低帧速率视频生成高帧速率的视频。这样的高帧速率视频显示了跨帧运动的平滑连续性。其结果是提高了视频播放的平滑度和感知的视觉质量。
NVIDIA Ada Lovelace 架构有一种新的 Optical Flow 加速器,即 NVOFA ,其性能比 NVIDIA-Ampere 架构 NVOFA.高 2.5 倍。它在包括 KITTI 和 MPI Sintel 在内的流行基准测试上提供了 15% 的质量改进。
FRUC 库使用 NVOFA 和 CUDA 插入帧的速度明显快于仅使用软件的方法。它还可以与自定义 DirectX 或 CUDA 应用程序无缝协作,使开发人员易于集成。
图 3.帧速率上转换
除了基本的光流示例应用程序外,Optical Flow SDK 4.0 还包括 FRUC 库和示例应用程序。 FRUC 库公开了 NVIDIA FRUC API ,这些 API 采用两个连续的帧,并在帧之间返回一个插值帧。这些 API 可用于任何视频的上转换。
与其他仅使用软件的方法相比,使用 FRUC 库的帧插值速度非常快。 API 易于使用,并支持 ARGB 和 NV12 输入曲面格式。它可以直接集成到任何 DirectX 或 CUDA 应用程序中。
SDK 中包含的示例应用程序源代码演示了如何将 FRUC API 用于视频 FRUC 。此源代码可以根据需要重用或修改,以构建自定义应用程序。
关于作者
Rohit Naskulwar 是 NVIDIA 多媒体驱动程序和应用程序团队的高级系统软件工程师。他曾在 NVIDIA GPU 上研究 VR 和光流用例。在加入 NVIDIA 之前,他曾在西门子从事 PLM TeamCenter 服务器端开发。 Rohit 拥有印度普纳大学计算机工程学士学位。
Aurobinda Maharana 是 NVIDIA 多媒体驱动团队的高级系统软件工程师。他从事 NVIDIA 光流驱动器和应用程序编程接口设计。此前,他曾负责 NVIDIA 视频驱动程序、 NVIDIA 流媒体和深度学习解决方案。他拥有印度班加罗尔印度科学院系统科学与自动化硕士学位。
Hareshkumar Borse 是 NVIDIA 多媒体驱动程序和应用程序团队的系统软件经理。他曾在 NVIDIA GPU 上研究视频、音频、 3dvision 和光流用例。在加入 NVIDIA 之前,他曾在 C-DAC 从事视频和图形应用程序开发。他拥有印度孟买 IIT 通信工程硕士学位
Robert Jensen 是 NVIDIA 的产品营销实习生,也是康涅狄格大学的计算机科学专业。他目前正致力于使开发人员能够采用 NVIDIA 光线追踪和 AI 软件。
审核编辑:郭婷
全部0条评论
快来发表一下你的评论吧 !