NVENC 预设迁移指南
本文档提供了一个表格,用于将视频编解码器 SDK 9.1 及更早版本中的 NVENCODE API 设置(特别是预设和码率控制模式)映射到视频编解码器 SDK 10.0 及更高版本中最接近的等效 NVENCODE API 设置。此表格可用作迁移指南,以迁移到视频编解码器 SDK 10.0 中引入的新的 NVENCODE API 预设架构。
一般来说,强烈建议使用基于所需性能/质量权衡的新预设和 NVENCODE API 设置。您的应用程序很可能通过直接使用新的 NVENCODE 预设而受益于更好的编码质量或更高的性能,因为新的 API 比以前的 API 提供了更大的灵活性,并且易于理解。
仅当需要与旧预设中获得的完全相同的性能/质量时,才使用本文档中的映射表。
表 1 和 表 2 分别显示了 NVENCODE API 中为 HEVC 和 H.264 公开的旧预设和新预设之间的映射。请注意,AV1 中不支持旧预设
旧预设(第 1 列)、码率控制 (RC) 模式(第 2 列)和分辨率(第 3 列)的组合可以映射到 NVENCODE API 的新参数:调优信息(第 4 列)、RC 模式(第 5 列)、预设(第 7 和 9 列)和多遍(第 6 和 8 列)。较新的预设和多遍值将根据 GPU 架构而有所不同,并且必须选择适当的 GPU 架构列。
在某些情况下,需要包含其他设置才能进行精确映射,这些设置在“特性 1”(表 1 中的第 10 列和 表 2 中的第 12 列)和“特性 2”(表 1 中的第 11 列和 表 2 中的第 13 列)列中提及。
例如,如果有人在 Turing 平台上对 1080p 编码使用 HEVC HQ 预设和 VBR_HQ RC 模式,则这对应于表 1 中的第 18 行。根据新的 NVENCODE API,最接近的设置是 P6 预设、RC 模式 VBR、多遍设置为 1、FrameIntervalP 设置为 1、IDR 周期设置为 60,GOP 长度设置为 60。
重要的是要注意,“特性 1”和“特性 2”仅用于指示以获得旧预设上的精确特性匹配,大多数应用程序会根据需要设置这些特性。例如,GOP 长度可以根据应用程序需要设置为更大的值。
视频编解码器 SDK 9.1 及更早版本中的设置 | 视频编解码器 SDK 10.0 及更高版本中的等效设置 | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
旧预设 | 旧 RC 模式 | 分辨率 | 调优信息 | RC 模式 | Ampere/Turing 多遍 | Ampere/Turing 预设 | Pascal/Maxwell 多遍 | Pascal/Maxwell 预设 | 特性 1 | 特性 2 |
HP | VBR | 720 | 高质量 | VBR | 0 | P1 | 0 | P4 | frameIntervalP 1 | |
HP | VBR | 1080 | 高质量 | VBR | 0 | P1 | 0 | P4 | idr 周期 60 | |
HP | VBR | 2160 | 高质量 | VBR | 0 | P1 | 0 | P4 | gop 长度 60 | |
HP | VBR_HQ | 720 | 高质量 | VBR | 1 | P1 | 1 | P4 | ||
HP | VBR_HQ | 1080 | 高质量 | VBR | 1 | P1 | 1 | P4 | ||
HP | VBR_HQ | 2160 | 高质量 | VBR | 1 | P1 | 1 | P4 | ||
默认 | VBR | 720 | 高质量 | VBR | 0 | P5 | 0 | P5 | ||
默认 | VBR | 1080 | 高质量 | VBR | 0 | P5 | 0 | P5 | ||
默认 | VBR | 2160 | 高质量 | VBR | 0 | P5 | 0 | P5 | ||
默认 | VBR_HQ | 720 | 高质量 | VBR | 1 | P5 | 2 | P5 | ||
默认 | VBR_HQ | 1080 | 高质量 | VBR | 1 | P5 | 1 | P5 | ||
默认 | VBR_HQ | 2160 | 高质量 | VBR | 1 | P5 | 1 | P5 | ||
HQ | VBR | 720 | 高质量 | VBR | 0 | P6 | 0 | P6 | ||
HQ | VBR | 1080 | 高质量 | VBR | 0 | P6 | 0 | P6 | ||
HQ | VBR | 2160 | 高质量 | VBR | 0 | P5 | 0 | P6 | ||
HQ | VBR_HQ | 720 | 高质量 | VBR | 1 | P6 | 2 | P6 | ||
HQ | VBR_HQ | 1080 | 高质量 | VBR | 1 | P6 | 1 | P6 | ||
HQ | VBR_HQ | 2160 | 高质量 | VBR | 1 | P5 | 1 | P6 | ||
LowLatencyHP | CBR | 720 | 低延迟 | CBR | 0 | P2 | 0 | P4 | ||
LowLatencyHP | CBR | 1080 | 低延迟 | CBR | 0 | P2 | 0 | P4 | ||
LowLatencyHP | CBR | 2160 | 低延迟 | CBR | 0 | P1 | 0 | P4 | ||
LowLatencyHP | CBR_HQ | 720 | 超低延迟 | CBR | 1 | P2 | 1 | P4 | ||
LowLatencyHP | CBR_HQ | 1080 | 超低延迟 | CBR | 1 | P2 | 1 | P4 | ||
LowLatencyHP | CBR_HQ | 2160 | 超低延迟 | CBR | 1 | P1 | 1 | P4 | ||
LowLatencyHP | CBR2LD | 720 | 低延迟 | CBR | 1 | P2 | 1 | P4 | ||
LowLatencyHP | CBR2LD | 1080 | 低延迟 | CBR | 1 | P2 | 1 | P4 | ||
LowLatencyHP | CBR2LD | 2160 | 低延迟 | CBR | 1 | P1 | 1 | P4 | ||
LowLatencyDefault | CBR | 720 | 低延迟 | CBR | 0 | P4 | 0 | P4 | ||
LowLatencyDefault | CBR | 1080 | 低延迟 | CBR | 0 | P3 | 0 | P4 | ||
LowLatencyDefault | CBR | 2160 | 低延迟 | CBR | 0 | P2 | 0 | P4 | ||
LowLatencyDefault | CBR_HQ | 720 | 超低延迟 | CBR | 2 | P4 | 2 | P4 | ||
LowLatencyDefault | CBR_HQ | 1080 | 超低延迟 | CBR | 1 | P3 | 1 | P4 | ||
LowLatencyDefault | CBR_HQ | 2160 | 超低延迟 | CBR | 1 | P2 | 1 | P4 | ||
LowLatencyDefault | CBR_LOWDELAY_HQ | 720 | 低延迟 | CBR | 2 | P4 | 2 | P4 | ||
LowLatencyDefault | CBR_LOWDELAY_HQ | 1080 | 低延迟 | CBR | 1 | P3 | 1 | P4 | ||
LowLatencyDefault | CBR_LOWDELAY_HQ | 2160 | 低延迟 | CBR | 1 | P2 | 1 | P4 | ||
LowLatencyHQ | CBR | 720 | 低延迟 | CBR | 0 | P5 | 0 | P6 | ||
LowLatencyHQ | CBR | 1080 | 低延迟 | CBR | 0 | P4 | 0 | P4 | ||
LowLatencyHQ | CBR | 2160 | 低延迟 | CBR | 0 | P4 | 0 | P4 | ||
LowLatencyHQ | CBR_HQ | 720 | 超低延迟 | CBR | 2 | P5 | 2 | P6 | ||
LowLatencyHQ | CBR_HQ | 1080 | 超低延迟 | CBR | 2 | P4 | 2 | P4 | ||
LowLatencyHQ | CBR_HQ | 2160 | 超低延迟 | CBR | 1 | P4 | 1 | P4 | ||
LowLatencyHQ | CBR_LOWDELAY_HQ | 720 | 低延迟 | CBR | 2 | P5 | 2 | P6 | ||
LowLatencyHQ | CBR_LOWDELAY_HQ | 1080 | 低延迟 | CBR | 2 | P4 | 2 | P4 | ||
LowLatencyHQ | CBR_LOWDELAY_HQ | 2160 | 低延迟 | CBR | 1 | P4 | 1 | P4 | ||
BD | VBR | 720 | 高质量 | VBR | 0 | P5 | 0 | P5 | frameIntervalP 1 | outputseiBufferPeriod 1 |
BD | VBR | 1080 | 高质量 | VBR | 0 | P5 | 0 | P5 | idr 周期 60 | outputseiPictureTime 1 |
BD | VBR | 2160 | 高质量 | VBR | 0 | P5 | 0 | P6 | gop 长度 60 | outputAud 1 |
BD | VBR_HQ | 720 | 高质量 | VBR | 1 | P5 | 2 | P5 | ||
BD | VBR_HQ | 1080 | 高质量 | VBR | 1 | P5 | 1 | P5 | ||
BD | VBR_HQ | 2160 | 高质量 | VBR | 1 | P5 | 1 | P5 | ||
LosslessHP | CQP | 720 | 无损 | CQP | X | P3 | X | P3 | frameIntervalP 1 | |
LosslessHP | CQP | 1080 | 无损 | CQP | X | P3 | X | P3 | idr 周期 30 | |
LosslessHP | CQP | 2160 | 无损 | CQP | X | P3 | X | P3 | gop 长度 30 | |
LosslessDefault | CQP | 720 | 无损 | CQP | X | P5 | X | P5 | ||
LosslessDefault | CQP | 1080 | 无损 | CQP | X | P5 | X | P5 | ||
LosslessDefault | CQP | 2160 | 无损 | CQP | X | P5 | X | P5 |
视频编解码器 SDK 9.1 及更早版本中的设置 | 视频编解码器 SDK 10.0 及更高版本中的等效设置 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
旧预设 | 旧 RC 模式 | 分辨率 | 调优信息 | RC 模式 | Ampere/Turing 多遍 | Ampere/Turing 预设 | Pascal/Maxwell 多遍 | Pascal/Maxwell 预设 | Kepler 多遍 | Kepler 预设 | 特性 1 | 特性 2 |
HP | VBR | 720 | 高质量 | VBR | 0 | P2 | 0 | P1 | 0 | P1 | frameIntervalP 1 | |
HP | VBR | 1080 | 高质量 | VBR | 0 | P2 | 0 | P1 | 0 | P1 | idr 周期 30 | |
HP | VBR | 2160 | 高质量 | VBR | 0 | P2 | 0 | P1 | 0 | P1 | gop 长度 30 | |
HP | VBR_HQ | 720 | 高质量 | VBR | 1 | P2 | 1 | P1 | 2 | P1 | ||
HP | VBR_HQ | 1080 | 高质量 | VBR | 1 | P2 | 1 | P1 | 2 | P1 | ||
HP | VBR_HQ | 2160 | 高质量 | VBR | 1 | P2 | 1 | P1 | 2 | P1 | ||
默认 | VBR | 720 | 高质量 | VBR | 0 | P3 | 0 | P3 | 0 | P3 | sliceMode 3 | |
默认 | VBR | 1080 | 高质量 | VBR | 0 | P3 | 0 | P3 | 0 | P3 | sliceModeData 4 | |
默认 | VBR | 2160 | 高质量 | VBR | 0 | P3 | 0 | P3 | 0 | P3 | ||
默认 | VBR_HQ | 720 | 高质量 | VBR | 2 | P3 | 2 | P3 | 2 | P3 | ||
默认 | VBR_HQ | 1080 | 高质量 | VBR | 2 | P3 | 2 | P3 | 2 | P3 | ||
默认 | VBR_HQ | 2160 | 高质量 | VBR | 1 | P4 | 1 | P3 | 2 | P3 | ||
HQ | VBR | 720 | 高质量 | VBR | 0 | P4 | 0 | P4 | 0 | P4 | ||
HQ | VBR | 1080 | 高质量 | VBR | 0 | P4 | 0 | P4 | 0 | P4 | ||
HQ | VBR | 2160 | 高质量 | VBR | 0 | P4 | 0 | P4 | 0 | P4 | ||
HQ | VBR_HQ | 720 | 高质量 | VBR | 2 | P4 | 2 | P4 | 2 | P4 | ||
HQ | VBR_HQ | 1080 | 高质量 | VBR | 1 | P5 | 1 | P5 | 2 | P4 | ||
HQ | VBR_HQ | 2160 | 高质量 | VBR | 1 | P5 | 1 | P5 | 2 | P4 | ||
LowLatencyHP | CBR | 720 | 低延迟 | CBR | 0 | P2 | 0 | P4 | 0 | P3 | sliceMode 3 | |
LowLatencyHP | CBR | 1080 | 低延迟 | CBR | 0 | P2 | 0 | P3 | 0 | P3 | sliceModeData 4 | |
LowLatencyHP | CBR | 2160 | 低延迟 | CBR | 0 | P2 | 0 | P2 | 0 | P2 | ||
LowLatencyHP | CBR_HQ | 720 | 超低延迟 | CBR | 1 | P2 | 1 | P4 | 2 | P3 | ||
LowLatencyHP | CBR_HQ | 1080 | 超低延迟 | CBR | 1 | P2 | 1 | P3 | 2 | P3 | ||
LowLatencyHP | CBR_HQ | 2160 | 超低延迟 | CBR | 1 | P2 | 1 | P2 | 2 | P2 | ||
LowLatencyHP | CBR_LOWDELAY_HQ | 720 | 低延迟 | CBR | 1 | P2 | 1 | P4 | 2 | P3 | ||
LowLatencyHP | CBR_LOWDELAY_HQ | 1080 | 低延迟 | CBR | 1 | P2 | 1 | P3 | 2 | P3 | ||
LowLatencyHP | CBR_LOWDELAY_HQ | 2160 | 低延迟 | CBR | 1 | P2 | 1 | P2 | 2 | P2 | ||
LowLatencyDefault | CBR | 720 | 低延迟 | CBR | 0 | P4 | 0 | P4 | 0 | P4 | ||
LowLatencyDefault | CBR | 1080 | 低延迟 | CBR | 0 | P3 | 0 | P4 | 0 | P3 | ||
LowLatencyDefault | CBR | 2160 | 低延迟 | CBR | 0 | P2 | 0 | P2 | 0 | P2 | ||
LowLatencyDefault | CBR_HQ | 720 | 超低延迟 | CBR | 2 | P4 | 2 | P4 | 2 | P4 | ||
LowLatencyDefault | CBR_HQ | 1080 | 超低延迟 | CBR | 2 | P3 | 2 | P4 | 2 | P3 | ||
LowLatencyDefault | CBR_HQ | 2160 | 超低延迟 | CBR | 1 | P2 | 1 | P2 | 2 | P2 | ||
LowLatencyDefault | CBR_LOWDELAY_HQ | 720 | 低延迟 | CBR | 2 | P4 | 2 | P4 | 2 | P4 | ||
LowLatencyDefault | CBR_LOWDELAY_HQ | 1080 | 低延迟 | CBR | 2 | P3 | 2 | P4 | 2 | P3 | ||
LowLatencyDefault | CBR_LOWDELAY_HQ | 2160 | 低延迟 | CBR | 1 | P2 | 1 | P2 | 2 | P2 | ||
LowLatencyHQ | CBR | 720 | 低延迟 | CBR | 0 | P4 | 0 | P4 | 0 | P4 | ||
LowLatencyHQ | CBR | 1080 | 低延迟 | CBR | 0 | P4 | 0 | P4 | 0 | P4 | ||
LowLatencyHQ | CBR | 2160 | 低延迟 | CBR | 0 | P4 | 0 | P4 | 0 | P4 | ||
LowLatencyHQ | CBR_HQ | 720 | 超低延迟 | CBR | 2 | P4 | 2 | P5 | 2 | P4 | ||
LowLatencyHQ | CBR_HQ | 1080 | 超低延迟 | CBR | 2 | P4 | 2 | P4 | 2 | P4 | ||
LowLatencyHQ | CBR_HQ | 2160 | 超低延迟 | CBR | 1 | P4 | 1 | P4 | 2 | P4 | ||
LowLatencyHQ | CBR_LOWDELAY_HQ | 720 | 低延迟 | CBR | 2 | P4 | 2 | P5 | 2 | P4 | ||
LowLatencyHQ | CBR_LOWDELAY_HQ | 1080 | 低延迟 | CBR | 2 | P4 | 2 | P4 | 2 | P4 | ||
LowLatencyHQ | CBR_LOWDELAY_HQ | 2160 | 低延迟 | CBR | 1 | P4 | 1 | P4 | 2 | P4 | ||
BD | VBR | 720 | 高质量 | VBR | 0 | P4 | 0 | P4 | 0 | P4 | frameIntervalP 3 | outputseiBufferPeriod 1 |
BD | VBR | 1080 | 高质量 | VBR | 0 | P4 | 0 | P4 | 0 | P4 | idr 周期 30 | outputseiPictureTime 1 |
BD | VBR | 2160 | 高质量 | VBR | 0 | P4 | 0 | P4 | 0 | P4 | gop 长度 30 | outputAud 1 |
BD | VBR_HQ | 720 | 高质量 | VBR | 1 | P5 | 1 | P5 | 2 | P5 | basref 0 | |
BD | VBR_HQ | 1080 | 高质量 | VBR | 1 | P5 | 1 | P5 | 2 | P5 | sliceMode 3 | |
BD | VBR_HQ | 2160 | 高质量 | VBR | 1 | P5 | 1 | P5 | 2 | P5 | sliceModeData 4 | |
LosslessHP | CQP | 720 | 无损 | CQP | X | P2 | X | P2 | X | X | frameIntervalP 1 | sliceMode 3 |
LosslessHP | CQP | 1080 | 无损 | CQP | X | P2 | X | P2 | X | X | idr 周期 30 | sliceModeData 1 |
LosslessHP | CQP | 2160 | 无损 | CQP | X | P2 | X | P2 | X | X | gop 长度 30 | |
LosslessDefault | CQP | 720 | 无损 | CQP | X | P3 | X | P3 | X | X | ||
LosslessDefault | CQP | 1080 | 无损 | CQP | X | P3 | X | P3 | X | X | ||
LosslessDefault | CQP | 2160 | 无损 | CQP | X | P3 | X | P3 | X | X |
声明
本文档仅供参考,不得视为对产品的特定功能、状况或质量的保证。NVIDIA Corporation(“NVIDIA”)对本文档中包含的信息的准确性或完整性不做任何明示或暗示的陈述或保证,并且对本文档中包含的任何错误不承担任何责任。NVIDIA 对因使用此类信息或因使用此类信息而可能导致的侵犯第三方专利或其他权利的后果或使用概不负责。本文档不构成开发、发布或交付任何材料(如下所定义)、代码或功能的承诺。
NVIDIA 保留在任何时候对本文档进行更正、修改、增强、改进和任何其他更改的权利,恕不另行通知。
客户在下订单前应获取最新的相关信息,并应核实此类信息是最新且完整的。
NVIDIA 产品根据订单确认时提供的 NVIDIA 标准销售条款和条件进行销售,除非 NVIDIA 和客户的授权代表签署的个别销售协议(“销售条款”)另有约定。NVIDIA 特此明确反对将任何客户通用条款和条件应用于购买本文档中引用的 NVIDIA 产品。本文档未直接或间接地形成任何合同义务。
NVIDIA 产品并非设计、授权或保证适用于医疗、军事、航空、航天或生命支持设备,也不适用于 NVIDIA 产品的故障或失灵可能合理预期会导致人身伤害、死亡或财产或环境损害的应用。NVIDIA 对在上述设备或应用中包含和/或使用 NVIDIA 产品不承担任何责任,因此,此类包含和/或使用由客户自行承担风险。
NVIDIA 不保证基于本文档的产品适用于任何特定用途。NVIDIA 不一定对每个产品的所有参数进行测试。客户全权负责评估和确定本文档中包含的任何信息的适用性,确保产品适合并满足客户计划的应用,并为该应用执行必要的测试,以避免应用或产品的默认设置。客户产品设计中的缺陷可能会影响 NVIDIA 产品的质量和可靠性,并可能导致超出本文档中包含的附加或不同条件和/或要求。NVIDIA 对任何可能基于或归因于以下原因的默认设置、损坏、成本或问题不承担任何责任:(i) 以任何违反本文档的方式使用 NVIDIA 产品,或 (ii) 客户产品设计。
商标
NVIDIA、NVIDIA 徽标以及 cuBLAS、CUDA、CUDA Toolkit、cuDNN、DALI、DIGITS、DGX、DGX-1、DGX-2、DGX Station、DLProf、GPU、Jetson、Kepler、Maxwell、NCCL、Nsight Compute、Nsight Systems、NVCaffe、NVIDIA Deep Learning SDK、NVIDIA Developer Program、NVIDIA GPU Cloud、NVLink、NVSHMEM、PerfWorks、Pascal、SDK Manager、Tegra、TensorRT、TensorRT Inference Server、Tesla、TF-TRT、Triton Inference Server、Turing 和 Volta 是 NVIDIA Corporation 在美国和其他国家/地区的商标和/或注册商标。其他公司和产品名称可能是与其关联的各自公司的商标。