次の方法で共有


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 操作を完了するためにメモリを使用できませんでした。

注釈

VideoDecoderBeginFrameS_OKを返す場合、Microsoft Direct3D ランタイムは VideoDecoderSubmitBuffers 関数を呼び出してデコード操作を実行します。 すべてのデコード操作が実行されると、ランタイムは VideoDecoderEndFrame 関数を呼び出して、ビデオ フレームのデコード操作を停止します。

メモVideoDecoderBeginFrame の各呼び出しには、VideoDecoderEndFrame への一致する呼び出しが必要であり、VideoDecoderBeginFrame 呼び出しを入れ子にすることはできません。
 
D3D11_1DDIARG_VIDEODECODERBEGINFRAME構造体には、次のデータが含まれています。
  • 復号化されたデータとデコードされたデータを受け取るリソース。
  • ビデオ フレーム データの暗号化に使用されたコンテンツ キー。

    この構造体の pContentKey メンバーが NULL に設定されていない場合、このメンバーによって参照されるバッファーにはフレームごとのコンテンツ キーが含まれます。 このキーは、セッション キーを使用する代わりに、データの暗号化を解除するために使用する必要があります。

    メモpContentKey メンバーが NULL に設定されていない場合、このメンバーによって参照されるバッファーは、セッション キーと AES-ECB アルゴリズムを使用して暗号化されます。
     
    pContentKey メンバーが NULL に設定されている場合は、セッション キーを使用してビデオ フレーム データを復号化する必要があります。

要件

要件
サポートされている最小のクライアント Windows 8
サポートされている最小のサーバー Windows Server 2012
対象プラットフォーム デスクトップ
Header d3d10umddi.h (D3d10umddi.h を含む)

こちらもご覧ください

CreateVideoDecoder

VideoDecoderEndFrame

VideoDecoderSubmitBuffers