在 Windows 8.1 上将 Nvidia 编码器 NVENC 与 H264 媒体基础结合使用

Using Nvidia Encoder NVENC with Media Foundation for H264 on Windows 8.1

我正在尝试在 Media Foundation 中使用 Nvidia GTX GPU 的硬件加速编码。 虽然我可以看到为快速同步注册的 MFT(对于我的 i7),但我看不到 Nvidia 的 MFT。我也可以看到通用的 Microsoft H264 编码器 MFT,但这似乎只是软件和同步。

如果我选择微软编码器并尝试硬件加速它(通过传递一个 d3d 设备并为其分配一个直接的 x 管理器,我得到一个未实现的 (E_NOIMPL) 结果。 此调用 returns E_NOIMPL:

encoder->ProcessMessage(MFT_MESSAGE_SET_D3D_MANAGER, (ULONG_PTR)((IMFDXGIDeviceManager*)(m_MFDXGIDeviceManager)))

我错过了什么吗? install/register nvidia mft 需要做些什么吗?

H.264 的 Nvidia NVENC MFT 在 windows 8.1 中不存在 升级到 windows 10 并安装 nvidia 驱动程序使其出现。从那里很容易让它工作