2015-09-04 251 views
1

我正尝试在Media Foundation中使用硬件加速编码和Nvidia GTX GPU。 虽然我可以看到MFT注册了Quick Sync(对于我的i7),但我无法看到Nvidia的MFT。我也可以看到一个通用的微软H264编码器MFT,但似乎只是软件和同步。 。在Windows 8.1上使用Nvidia编码器NVENC和Media Foundation for H264

如果我选择了微软编码一个和我尝试硬件加速(通过传递一个D3D设备,并分配一个直接的X经理,我得到一个没有实现(E_NOIMPL)结果 此调用返回E_NOIMPL:

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

我缺少的东西?有什么是必须做安装/注册NVIDIA MFT?

+1

编码器是否具有[MF_SA_D3D_AWARE](https://msdn.microsoft.com/en-us/library/windows/desktop/ms703994%28v=vs.85%29.aspx)或[MF_SA_D3D11_AWARE] (https://msdn.microsoft.com/en-us/library/windows/desktop/hh162889%28v=vs.85%29.aspx)属性(从[IMFTransform :: GetAttributes](https:// msdn)返回.microsoft.com/EN-US /库/窗/台式机/ ms703141%28V = VS.85%29.aspx))? –

+0

不会。问题是在Windows 8.1中不存在NVENC MFT。我刚刚发现 – cloudraven

回答

1

Nvidia的NVENC MFT为H.264无法在Windows 8.1升级 存在到Windows 10和安装nvidia驱动程序使其显示。从那里很容易得到它的工作

相关问题