我希望能够使用 Media Foundation IMFTransform 对视频帧进行 H264 视频编码。这在 Win32 中很容易实现,您可以在其中使用 MFTEnumEx 枚举转换并找到 H264 编码器。
但是,在 WinRT(商店应用程序)上,我找不到实例化的方法。我注意到有一个类 CMSH264EncoderMFT,但没有定义用于 CoCreateInstance 上的 CLSID。
和:
CoCreateInstance(CLSID_CMSH264EncoderMFT, nullptr, CLSCTX_INPROC_SERVER, __uuidof(IUnknown), (void **)&pUnknown);
未为 WinRT 应用定义 CLSID_CMSH264EncoderMFT。
并尝试:
ComPtr<CMSH264EncoderMFT> encoder = Make<CMSH264EncoderMFT>();
它说 CMSH264EncoderMFT 类不完整,并说“使用未定义类型'CMSH264EncoderMFT'”。甚至不知道 Make 的语法是否正确或合适......
有没有人知道如何为 WinRT 做到这一点?