共用方式為


PFND3D11_1DDI_VIDEODECODERBEGINFRAME回呼函式 (d3d10umddi.h)

啟動 DirectX 影片加速 (DXVA) 譯碼作業,以譯碼視訊畫面。

語法

PFND3D11_1DDI_VIDEODECODERBEGINFRAME Pfnd3d111DdiVideodecoderbeginframe;

HRESULT Pfnd3d111DdiVideodecoderbeginframe(
  D3D10DDI_HDEVICE unnamedParam1,
  D3D11_1DDI_HDECODE unnamedParam2,
  const D3D11_1DDIARG_VIDEODECODERBEGINFRAME *unnamedParam3
)
{...}

參數

unnamedParam1

hDevice [in]

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

unnamedParam2

hDecoder [in]

透過呼叫 createVideoDecoder 函式所建立的視訊譯碼器物件的句柄。

unnamedParam3

pBeginFrame [in]

D3D11_1DDIARG_VIDEODECODERBEGINFRAME 結構的指標。 如需詳細資訊,請參閱一節。

傳回值

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

傳回碼 描述
S_OK 譯碼作業已成功啟動。
E_OUTOFMEMORY 記憶體無法完成作業。

言論

如果 VideoDecoderBeginFrame 傳回 S_OK,Microsoft Direct3D 運行時間會呼叫 VideoDecoderSubmitBuffers 函式來執行譯碼作業。 當所有譯碼作業都已執行時,運行時間會呼叫 VideoDecoderEndFrame 函式,以停止視訊畫面上的譯碼作業。

NoteVideoDecoderBeginFrame 呼叫 必須有相符的呼叫,VideoDecoderEndFrame,而且無法巢狀 VideoDecoderBeginFrame 呼叫。
 
D3D11_1DDIARG_VIDEODECODERBEGINFRAME 結構包含下列資料:
  • 將接收解密和譯碼數據的資源。
  • 用來加密視訊畫面數據的內容密鑰。

    如果 pContentKey 此結構的成員未設定為 NULL,則這個成員所參考的緩衝區會包含每個畫面格的內容索引鍵。 此金鑰必須用來解密資料,而不是使用會話金鑰。

    注意 如果 pContentKey 成員未設定為 NULL,則會使用會話密鑰搭配 AES-ECB 演演算法來加密此成員所參考的緩衝區。
     
    如果 pContentKey 成員設定為 NULL,則視訊畫面數據應該使用會話密鑰解密。

要求

要求 價值
最低支援的用戶端 Windows 8
支援的最低伺服器 Windows Server 2012
目標平臺 桌面
標頭 d3d10umddi.h (包括 D3d10umddi.h)

另請參閱

CreateVideoDecoder

VideoDecoderEndFrame

VideoDecoderSubmitBuffers