次の方法で共有


IDirectXVideoDecoder::GetBuffer メソッド (dxva2api.h)

DirectX ビデオ アクセラレーション (DXVA) デコーダー バッファーへのポインターを取得します。

構文

HRESULT GetBuffer(
  [in]  UINT BufferType,
  [out] void **ppBuffer,
  [out] UINT *pBufferSize
);

パラメーター

[in] BufferType

取得するバッファーの種類。 次のいずれかの値を使用します。

意味
DXVA2_PictureParametersBufferType
画像デコード パラメーター バッファー。
DXVA2_MacroBlockControlBufferType
Macroblock コントロールのコマンド バッファー。
DXVA2_ResidualDifferenceBufferType
残差ブロック データ バッファー。
DXVA2_DeblockingControlBufferType
フィルター 制御コマンド バッファーのブロック解除。
DXVA2_InverseQuantizationMatrixBufferType
逆量子化行列バッファー。
DXVA2_SliceControlBufferType
スライス コントロール バッファー。
DXVA2_BitStreamDateBufferType
ビットストリーム データ バッファー。
DXVA2_MotionVectorBuffer
モーション ベクター バッファー。
DXVA2_FilmGrainBuffer
フィルムグレイン合成データバッファー。

[out] ppBuffer

メモリ バッファーの先頭へのポインターを受け取ります。

[out] pBufferSize

バッファーのサイズをバイト単位で受け取ります。

戻り値

このメソッドは HRESULT を返します。 有効な値を次の表に示しますが、これ以外にもあります。

リターン コード 説明
S_OK
メソッドが成功しました。

注釈

メソッドは、バッファーを含む Direct3D サーフェスをロックします。 バッファーの使用が完了したら、 IDirectXVideoDecoder::ReleaseBuffer を呼び出してサーフェスのロックを解除します。

GPU でキューに登録されている操作が多すぎる場合、このメソッドはブロックする可能性があります。 このメソッドは、空きバッファーが使用可能になるとブロックを解除します。

要件

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

こちらもご覧ください

DirectX ビデオ アクセラレータ 2.0

IDirectXVideoDecoder