PFND3DDDI_DECODEEXTENSIONEXECUTE コールバック関数 (d3dumddi.h)
DecodeExtensionExecute 関数は、指定された Microsoft DirectX ビデオ アクセラレータ (VA) 非標準デコード デバイスを使用してデコード操作を実行します。
構文
PFND3DDDI_DECODEEXTENSIONEXECUTE Pfnd3dddiDecodeextensionexecute;
HRESULT Pfnd3dddiDecodeextensionexecute(
HANDLE hDevice,
const D3DDDIARG_DECODEEXTENSIONEXECUTE *unnamedParam2
)
{...}
パラメーター
hDevice
ディスプレイ デバイス (グラフィックス コンテキスト) へのハンドル。
unnamedParam2
pData [in, out]
実行する DirectX VA デコード操作を記述する D3DDDIARG_DECODEEXTENSIONEXECUTE 構造体へのポインター。
戻り値
DecodeExtensionExecute は、次のいずれかの値を返します。
リターン コード | 説明 |
---|---|
S_OK | DirectX VA デコード操作が正常に実行されました。 |
E_OUTOFMEMORY | DecodeExtensionExecute は、完了するために必要なメモリを割り当てませんでした。 |
注釈
ユーザー モードディスプレイ ドライバーは、 DecodeExtensionExecute 関数を実装して、標準のデコードの種類 (つまり、非標準のデコード GUID) の拡張機能をサポートできます。 これらの非標準のデコードの種類は、暗号化やその他の拡張機能を構成する場合に便利です。
DecodeExtensionExecute は、DirectX VA 2.0 デコーダーで非標準の拡張機能が必要な場合に呼び出されます。
これらの非標準の拡張機能を必要とする DirectX VA 1.0 デコーダーとの互換性のために、DirectX VA 1.0 デコーダーが実行呼び出しを行うたびに DecodeExtensionExecute が呼び出され、4 より大きいbDXVA_Func値が、D3DDDIARG_DECODEEXTENSIONEXECUTE構造体の Function メンバーの最も重要な 8 ビットに設定されます。 DecodeExtensionExecute は、DirectX VA 1.0 デコーダーが構成呼び出しを行うたびに呼び出され、DXVA_QUERYORREPLYFUNCFLAG_DECODER_PROBE_QUERY (0xFFFFF1) または DXVA_QUERYORREPLYFUNCFLAG_DECODER_LOCK_QUERY (0xFFFFF5) フラグ以外のDXVA_ConfigQueryOrReplyFunc フラグが Function の最も重要な 24 ビットに設定されます。 Function のビット設定の意味の詳細については、「変数のDXVA_ConfigQueryOrReplyFlagとDXVA_ConfigQueryorReplyFunc」および「変数のbDXVA_Func」トピックを参照してください。
DirectX VA 1.0 デコーダーとの互換性の問題により、このような構成呼び出しがDXVA_QUERYORREPLYFUNCFLAG_DECODER_LOCK_QUERY前に行われる可能性があるため、これらのデコーダーは、デコード デバイスが作成される前にもこのような構成呼び出しを行うことができます。 デコード デバイスが作成される前にこのような構成呼び出しが行われた場合、pData パラメーターが指すD3DDDIARG_DECODEEXTENSIONEXECUTE構造体の hDecode メンバーは NULL に設定されます。 このような状況では、ドライバーがデコード デバイスに依存しない状況をサポートできない場合は、エラー (たとえば、E_FAIL) を返すドライバーが必要な場合があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。 |
対象プラットフォーム | デスクトップ |
Header | d3dumddi.h (D3dumddi.h を含む) |