从 SDK 2.1.0 版本开始,您可以播放具有 GPU 驱动的解码和处理 10 位数据的 HDR 视频。
为此,您应该启用 GPU 管道以加快帧速率和视频转换:
MFFactoryClass myFactory = new MFFactoryClass();
myFactory.PropsSet("gpu_pipeline", "true");
HDR 支持仅针对 NVIDIA 解码器实现,需要一些额外的属性。
您可以在系统注册表中启用它们:
MPlatform
HKEY_CURRENT_USER\Software\Medialooks\MPlatform\MFile\MFileFFM
解码器.nvidia = true
experimental.mfcodecs = true
HKEY_CURRENT_USER\Software\Medialooks\MPlatform\MFile
output.10bit = true
MFormats
HKEY_CURRENT_USER\Software\Medialooks\MFormats\MReader
解码器.nvidia = true
实验性.mfcodecs = true
output.10bit = true
所有属性都可以在文件初始化时指定:
myReader.ReaderOpen(pathToFile,
"decoder.nvidia = true experimental.mfcodecs = true output.10bit = true");
myFile.FileNameSet(pathToFile,
"decoder.nvidia = true experimental.mfcodecs = true output.10bit = true")
请注意,对于视频转换,您应该使用 r210 eMFCC 类型以保持视频由 GPU 处理。