MFT_MESSAGE_SET_D3D_MANAGER
设置或清除 DirectX 视频加速 (DXVA) 的 Direct3D 设备管理器。
消息参数
流式处理开始时,ulParam 参数包含一个 IUnknown 指针。 MFT 将为 Direct3D 9 的 IDirect3DDeviceManager9 接口和 Direct3D 11 的 IMFDXGIDeviceManager 接口查询此接口。 停止流式处理时,ulParameter 包含值 NULL。
备注
若要发送此消息,请调用 IMFTransform::ProcessMessage。
此消息仅适用于视频转换。 除非 MFT 为 MF_SA_D3D_AWARE 属性(Direct3D 11 的 MF_SA_D3D11_AWARE返回 TRUE,否则客户端不应发送此消息。
不要将此消息发送到具有多个输出的 MFT。
实现
仅当 MFT 使用 DirectX 视频加速进行视频处理或解码时,MFT 才应支持此消息。
如果 MFT 支持此消息,则它还应实现 IMFTransform::GetAttributes 方法,并为 MF_SA_D3D_AWARE 属性(Direct3D 11 的 MF_SA_D3D11_AWARE)返回 TRUE。 此属性会通知客户端,要求客户端应在流式处理开始前将 MFT_MESSAGE_SET_D3D_MANAGER 消息发送到 MFT。
如果 MFT 不支持此消息,它应从 ProcessMessage 返回E_NOTIMPL。 这是常规规则的一个例外:MFT 可以从它忽略的任何消息返回 S_OK。
有关详细信息,请参阅 Direct3D 感知的 MFT。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows Vista [仅限桌面应用] |
最低受支持的服务器 |
Windows Server 2008 [仅限桌面应用] |
标头 |
|
另请参阅