NVIDIA的视频编解码器API
十多年来,NVIDIA通过NVIDIAVideo Codec SDK在GPU上提供硬件加速视频处理。这是一套全面的API、高性能工具、示例和文档,用于在Windows和Linux上进行硬件加速视频编码和解码。
NVIDIA还通过Microsoft的DirectX Video支持GPU加速的编码和解码,这是一种面向Windows开发人员的跨供应商API,Vulkan Video同时支持Linux和Windows。与NVIDIA视频编解码器SDK相比,DirectX视频和Vulkan视频都是低级API。虽然视频编解码器SDK为C++开发人员提供了自动化,但DirectX Video和Vulkan Video通过硬件加速块提供了对视频流的精确控制,使应用程序能够有效地协调系统资源。
无论您喜欢DirectX还是Vulkan,您都可以使用自己选择的语言,将灵活的GPU加速视频编码和解码与其他GPU加速(如3D和AI)相结合。
低级Vulkan视频扩展对流行的开源流媒体框架(如媒体框架和FFmpeg格式这两个视频都被积极移植到Vulkan视频中。Vulkan的跨平台可用性将使这些框架能够跨多个平台加速GPU处理,而无需移植到多个专有视频API。请参阅Vulkan视频入门页面了解更多详细信息。
PyNv视频编解码器是2023年第4季度推出的另一组API,它提供了简单的API,用于在Python中处理视频时利用视频编码和解码功能。PyNvVideoCodec是一个库,它通过C++API提供python绑定,用于硬件加速视频编码和解码。
视频编解码器SDK、DirectX视频、Vulkan视频和PyNvVideoCodec为GPU加速的视频工作流提供了补充支持。NVIDIA将继续支持所有列出的API,为开发人员提供使用最适合其需求的API的选项。
|
Vulkan视频 |
DirectX视频 |
NVIDIA视频编解码器SDK |
PyNv视频编解码器 |
站台 |
Windows和Linux
|
窗户
|
Windows和Linux
|
Windows和Linux
|
优点 |
- 低液位控制
- 本地Vulkan集成
- 方便Vulkan开发人员
- 多供应商
|
- 低液位控制
- 本机DirectX和Windows集成
- DirectX开发人员易于使用
- 多供应商
|
- 高级控制
- 自定义管道中的本机集成
- 适用于对Vulkan和Direct X了解较少的用户
- 易于C、C++开发人员使用
- 英伟达专有API
- 全面的功能集
|
- C++视频编解码器SDK包装类上的Python绑定
- 易于Python开发人员使用
- 英伟达专有API
|
本机API接口 |
Vulkan图形
|
D3D11(仅解码)和D3D12
|
D3D9、D3D10、D3D11和D3D12(仅编码)CUDA(编码和解码)
|
CUDA(编码和解码)
|