次の方法で共有


MFT_MESSAGE_SET_D3D_MANAGER

DirectX ビデオ アクセラレータ (DXVA) の Direct3D Device Manager を設定またはクリアします。

メッセージ パラメータ

ストリーミングが開始されると、ulParam パラメーターに IUnknown ポインターが含まれます。 MFT では、IDirect3DDeviceManager9 インターフェイス (Direct3D 9 の場合) と IMFDXGIDeviceManager インターフェイス (Direct3D 11 の場合) でこのポインターに対するクエリを実行します。 ストリーミングが停止すると、ulParameter に値 NULL が含まれます。

解説

このメッセージを送信するには、IMFTransform::P rocessMessage を呼び出します。

このメッセージは、ビデオ変換にのみ適用されます。 MFT で MF_SA_D3D_AWARE 属性 (Direct3D 11 の場合は MF_SA_D3D11_AWARE) に TRUE が返されていない限り、クライアントからこのメッセージは送信されません。

このメッセージは、複数の出力を含む MFT に送信しないでください。

実装

MFT がこのメッセージに対応する必要があるのは、MFT でビデオ処理またはデコードに DirectX ビデオ アクセラレータが使用されている場合のみです。

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」を参照してください。

要件

要件 Value
サポートされている最小のクライアント
Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2008 [デスクトップ アプリのみ]
ヘッダー
Mftransform.h

関連項目

Direct3D 対応の MFT

メディア ファンデーションでの DXVA 2.0 のサポート

メディア ファンデーションでの Direct3D 11 ビデオ デコードのサポート

MFT_MESSAGE_TYPE