共用方式為


PFND3DDDI_DECODEEXTENSIONEXECUTE回呼函式 (d3dumddi.h)

DecodeExtensionExecute 函式會使用指定的 DirectX 影片加速器 (DXVA) 非標準譯碼擴充裝置來執行譯碼作業。

語法

PFND3DDDI_DECODEEXTENSIONEXECUTE Pfnd3dddiDecodeextensionexecute;

HRESULT Pfnd3dddiDecodeextensionexecute(
  HANDLE hDevice,
  const D3DDDIARG_DECODEEXTENSIONEXECUTE *unnamedParam2
)
{...}

參數

hDevice

顯示裝置的句柄(圖形內容)。

unnamedParam2

pData [in, out]

描述要執行之 DXVA 譯碼作業之 D3DDDIARG_DECODEEXTENSIONEXECUTE 結構的指標。

傳回值

DecodeExtensionExecute 會傳回下列其中一個值:

傳回碼 描述
S_OK 已成功執行 DirectX VA 譯碼作業。
E_OUTOFMEMORY DecodeExtensionExecute 無法配置所需的記憶體,使其完成。

言論

使用者模式顯示驅動程式 (UMD) 可以實作 DecodeExtensionExecute 函式,以支援標準譯碼類型的擴充功能(也就是非標準譯碼 GUID)。 這些非標準譯碼類型有助於設定加密和其他增強功能。

當 DirectX VA 2.0 譯碼器需要非標準延伸模組時,就會呼叫 decodeExtensionExecute

為了與可能需要這些非標準延伸模組的 DirectX VA 1.0 譯碼器相容,每當 DirectX VA 1.0 譯碼器發出執行呼叫時,每當 DirectX VA 1.0 譯碼器執行呼叫時,任何大於 4 的bDXVA_Func 值都會設定在 D3DDDIARG_DECODEEXTENSIONEXECUTE 結構中最重要的 8 位 函式 成員中。 每當 DirectX VA 1.0 譯碼器進行組態呼叫時,也會呼叫 decodeExtensionExecute,其中DXVA_QUERYORREPLYFUNCFLAG_DECODER_PROBE_QUERY (0xFFFFF1) 或 DXVA_QUERYORREPLYFUNCFLAG_DECODER_LOCK_QUERY (0xFFFFF5) 旗標以外的任何DXVA_ConfigQueryOrReplyFunc旗標都會設定在最重要的 24 位 Function中。 如需 函式位設定意義的詳細資訊,請參閱 DXVA_ConfigQueryOrReplyFlag 和DXVA_ConfigQueryorReplyFunc變數bDXVA_Func 變數 主題。

由於 DirectX VA 1.0 譯碼器在DXVA_QUERYORREPLYFUNCFLAG_DECODER_LOCK_QUERY之前可能會進行這類設定呼叫的相容性問題,因此這些譯碼器也可以在建立譯碼裝置之前進行這類設定呼叫。 如果在建立譯碼裝置之前進行這類組態呼叫,hDecodeD3DDDIARG_DECODEEXTENSIONEXECUTE 結構的成員,pData 參數所指向的成員會設定為 NULL。 在此情況下,如果驅動程式無法支援與譯碼裝置無關的情況,可能需要驅動程式傳回錯誤(例如,E_FAIL)。

要求

要求 價值
最低支援的用戶端 Windows Vista
目標平臺 桌面
標頭 d3dumddi.h (包括 D3dumddi.h)

另請參閱

CreateExtensionDevice

D3DDDIARG_DECODEEXTENSIONEXECUTE

D3DDDI_DEVICEFUNCS