NVIDIA 视频编解码器 SDK
一套全面的 API,包括用于 Windows 和 Linux 上硬件加速视频编码和解码的高性能工具、示例和文档。
NVIDIA GeForce Now是通过在数据中心利用 NVENC 并将结果传输至最终客户端而实现的
基于硬件的解码器和编码器
NVIDIA GPU 包含一个或多个基于硬件的解码器和编码器(独立于 CUDA 内核),为多种流行的编解码器提供完全加速的基于硬件的视频解码和编码。卸载解码/编码后,图形引擎和 CPU 可用于其他操作。
用于视频解码(称为NVDEC)和视频编码(称为NVENC)的GPU硬件加速器引擎支持比实时视频处理更快的速度,这使得它们除了视频播放之外还适合用于转码应用。视频编解码器 SDK 可让您利用 NVENC 和 NVDEC 在 Ada Lovelace 架构上实现实时 8k 60FPS AV1 和 HEVC 视频。
NVENC - 硬件加速视频编码
在 NVIDIA Ada 架构上引入使用视频编解码器 SDK 12.0 的 AV1 编码。 AV1 是最先进的视频编码格式,与 H.264 和 HEVC 相比,它支持更高的质量和更好的性能。在 Ada 上,多个 NVENC 与 AV1 相结合,可以以 60fps 编码 8k 视频,同时进行更多数量的并发会话。通过将完整编码(计算复杂)卸载到 NVENC,图形引擎和 CPU 可以自由用于其他操作。例如,在游戏录制和流媒体场景中,例如使用开放广播软件 (OBS)流媒体到Twitch.tv ,将编码完全卸载到 NVENC 使图形引擎带宽完全可用于游戏渲染。
NVENC 能够在不使用 CPU 的情况下实现高质量和超低延迟的流媒体应用程序,以非常高的质量进行编码以进行存档、OTT 流媒体、网络视频,并以每个流超低功耗(瓦/流)进行编码
注意:这些图表展示了 NVIDIA 数据中心 T4、A10 和 L40 上的性能。
比特率节省是基于 PSNR 的 BD-BR,使用 FFmpeg 对各种内容(数百个视频剪辑)进行平均。
为了清楚起见,基准图表上仅显示了数据中心 GPU,但具有相同架构的等效工作站 GPU 的性能类似。要了解更多有关生成上述数据的硬件详细信息、流程和软件配置,请参阅此详细文档。
GPU | H.264 (AVCHD) YUV 4:2:0 | H.264 (AVCHD) YUV 4:4:4 | H.264 (AVCHD) LOSSLESS | H.265 (HEVC) YUV 4:2:0 | H.265 (HEVC) YUV 4:4:4 | H.265 (HEVC) LOSSLESS | AV1 | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
MAX Color | MAX Res. | MAX Color | MAX Res. | MAX Color | MAX Res. | MAX Color | MAX Res. | MAX Color | MAX Res. | MAX Color | MAX Res. | MAX Color | MAX Res. | |
Maxwell (1st Gen)* | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A |
Maxwell (2nd Gen) | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | N/A | N/A | N/A | N/A | N/A | N/A |
Maxwell (GM206) | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | N/A | N/A |
Pascal | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 10-bit | 8192 x 8192** | 10-bit | 8192 x 8192** | 10-bit | 8192 x 8192** | N/A | N/A |
Volta | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 10-bit | 8192 x 8192 | 10-bit | 8192 x 8192 | 10-bit | 8192 x 8192 | N/A | N/A |
Turing | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 10-bit | 8192 x 8192 | 10-bit | 8192 x 8192 | 10-bit | 8192 x 8192 | N/A | N/A |
Ampere (A100) |
No | No | No | No | No | No | No | No | No | No | No | No | No | No |
Ampere (non A100) |
8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 10-bit | 8192 x 8192 | 10-bit | 8192 x 8192 | 10-bit | 8192 x 8192 | N/A | N/A |
Ada | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 8-bit | 4096 x 4096 | 10-bit | 8192 x 8192 | 10-bit | 8192 x 8192 | 10-bit | 8192 x 8192 | 10-bit | 8192 x 8192 |
* Except GM108 and GP108 (not supported)
** Except GP100 (is limited to 4K resolution)
NVDEC - 硬件加速视频解码
NVIDIA GPU 包含一个基于硬件的解码器(称为 NVDEC),它为多种流行的编解码器提供完全加速的基于硬件的视频解码。通过将完整解码卸载到 NVDEC,图形引擎和 CPU 可以自由用于其他操作。 NVDEC 支持比实时解码快得多的速度,这使得除了视频播放应用之外,它还适合用于转码应用。
NVDECODE API 使软件开发人员能够配置此专用硬件视频解码器。该专用加速器支持 Windows 和 Linux 平台上以下视频编解码器的硬件加速解码:MPEG-2、VC-1、H.264 (AVCHD)、H.265 (HEVC)、VP8、VP9 和 AV1(见下表)了解每代 GPU 的编解码器支持)。
GPU | *H.265 (HEVC) 4:4:4 | H.265 (HEVC) 4:2:0 | H.264 (AVCHD) 4:2:0 | VP9 | VP8 | MPEG-2 | VC-1 | AV1 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
MAX Color | MAX Res. | MAX Color | MAX Res. | MAX Color | MAX Res. | MAX Color | MAX Res. | MAX Color | MAX Res. | MAX Color | MAX Res. | MAX Color | MAX Res. | MAX Color | MAX Res. | |
Kepler | N/A | N/A | N/A | N/A | 8-bit | 4096 x 4096 | N/A | N/A | N/A | N/A | 8-bit | 4080 x 4080 | 8-bit | 2048 x 1024 | N/A | N/A |
Maxwell (1st Gen)* | N/A | N/A | N/A | N/A | 8-bit | 4096 x 4096 | N/A | N/A | N/A | N/A | 8-bit | 4080 x 4080 | 8-bit | 2048 x 1024 | N/A | N/A |
Maxwell (2nd Gen) | N/A | N/A | N/A | N/A | 8-bit | 4096 x 4096 | N/A | N/A | 8-bit | 4096 x 4096 | 8-bit | 4080 x 4080 | 8-bit | 2048 x 1024 | N/A | N/A |
Maxwell (GM206) | N/A | N/A | 10-bit | 4096 x 2304 | 8-bit | 4096 x 4096 | 8-bit | 4096 x 2304 | 8-bit | 4096 x 4096 | 8-bit | 4080 x 4080 | 8-bit | 2048 x 1024 | N/A | N/A |
Pascal | N/A | N/A | 12-bit | 8192 x 8192** | 8-bit | 4096 x 4096 | 12-bit**** | 8192 x 8192** | 8-bit | 4096 x 4096*** | 8-bit | 4080 x 4080 | 8-bit | 2048 x 1024 | N/A | N/A |
Volta | N/A | N/A | 12-bit | 8192 x 8192 | 8-bit | 4096 x 4096 | 12-bit | 8192 x 8192 | 8-bit | 4096 x 4096 | 8-bit | 4080 x 4080 | 8-bit | 2048 x 1024 | N/A | N/A |
Turing | 12-bit | 8192 x 8192 | 12-bit | 8192 x 8192 | 8-bit | 4096 x 4096 | 12-bit | 8192 x 8192 | 8-bit | 4096 x 4096 | 8-bit | 4080 x 4080 | 8-bit | 2048 x 1024 | N/A | N/A |
Ampere (A100) |
12-bit | 8192 x 8192 | 12-bit | 8192 x 8192 | 8-bit | 4096 x 4096 | 12-bit | 8192 x 8192 | 8-bit | 4096 x 4096 | 8-bit | 4080 x 4080 | 8-bit | 2048 x 1024 | N/A | N/A |
Ampere (non A100) |
12-bit | 8192 x 8192 | 12-bit | 8192 x 8192 | 8-bit | 4096 x 4096 | 12-bit | 8192 x 8192 | 8-bit | 4096 x 4096 | 8-bit | 4080 x 4080 | 8-bit | 2048 x 1024 | 10-bit | 8192 x 8192 |
Ada | 12-bit | 8192 x 8192 | 12-bit | 8192 x 8192 | 8-bit | 4096 x 4096 | 12-bit | 8192 x 8192 | 8-bit | 4096 x 4096 | 8-bit | 4080 x 4080 | 8-bit | 2048 x 1024 | 10-bit | 8192 x 8192 |
* Except GM108 (not supported)
** Max resolution support is limited to selected Pascal chips
*** VP8 decode support is limited to selected Pascal chips
**** VP9 10/12 bit decode support is limited to select Pascal chips
合作伙伴和例子
新闻中的视频编解码器 SDK
NVIDIA 视频编解码器 SDK 加速新的视频创建和流媒体功能
视频编解码器 SDK 12.1 现已推出,改进了分割编码和新的低级 NVENC API。了解新功能以及如何使用它们来加速视频创建和流式传输。
阅读更多利用 AV1 和 NVIDIA Ada Lovelace 架构提高视频质量和性能
AV1 是新的黄金标准视频格式,与旧的 H.264 和 H.265 格式相比,具有卓越的效率和质量。它是开放媒体联盟标准化的最新免版税、高效视频编码器。
阅读更多AV1 编码和 FRUC:NVIDIA Ada 架构上的视频性能提升和更高保真度
GTC 上宣布了视频编解码器 SDK 的更新(包括新一代 Ada GPU 上的 AV1 编码)和光流 SDK 的更新(包括新的帧速率上转换库)。
阅读更多Ada 中的 NVIDIA 视频技术
NVIDIA GPU 包含用于视频编码、解码、JPEG 静止图像解码和光流计算的专用硬件。本次演讲涵盖了 Ada GPU 支持的最新功能以及软件更新,例如新的 SDK 功能、用例等。
手表