Win32 API 日本語リファレンス
ホームMedia.MediaFoundation › ID3D12VideoEncodeCommandList4

ID3D12VideoEncodeCommandList4

COM
IID69aeb5b7-55f2-4012-8b73-3a88d65a204c継承元ID3D12VideoEncodeCommandList3自前メソッド開始 vtbl30

メソッド 3

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 30 void EncodeFrame1(ID3D12VideoEncoder* pEncoder, ID3D12VideoEncoderHeap1* pHeap, D3D12_VIDEO_ENCODER_ENCODEFRAME_INPUT_ARGUMENTS1* pInputArguments, D3D12_VIDEO_ENCODER_ENCODEFRAME_OUTPUT_ARGUMENTS1* pOutputArguments)
pEncoderID3D12VideoEncoder*in符号化処理に使用するビデオエンコーダーへのポインター。
pHeapID3D12VideoEncoderHeap1*in符号化に使用する拡張エンコーダーヒープ(ID3D12VideoEncoderHeap1)へのポインター。
pInputArgumentsD3D12_VIDEO_ENCODER_ENCODEFRAME_INPUT_ARGUMENTS1*in符号化入力を記述するD3D12_VIDEO_ENCODER_ENCODEFRAME_INPUT_ARGUMENTS1構造体へのポインター。
pOutputArgumentsD3D12_VIDEO_ENCODER_ENCODEFRAME_OUTPUT_ARGUMENTS1*in符号化出力を記述するD3D12_VIDEO_ENCODER_ENCODEFRAME_OUTPUT_ARGUMENTS1構造体へのポインター。
vtbl 31 void ResolveEncoderOutputMetadata1(D3D12_VIDEO_ENCODER_RESOLVE_METADATA_INPUT_ARGUMENTS1* pInputArguments, D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS1* pOutputArguments)
pInputArgumentsD3D12_VIDEO_ENCODER_RESOLVE_METADATA_INPUT_ARGUMENTS1*inメタデータ解決入力を記述するD3D12_VIDEO_ENCODER_RESOLVE_METADATA_INPUT_ARGUMENTS1構造体へのポインター。
pOutputArgumentsD3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS1*in解決済みメタデータを受け取るD3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS1構造体へのポインター。
vtbl 32 void ResolveInputParamLayout(D3D12_VIDEO_ENCODER_RESOLVE_INPUT_PARAM_LAYOUT_INPUT_ARGUMENTS* pInputArguments, D3D12_VIDEO_ENCODER_RESOLVE_INPUT_PARAM_LAYOUT_OUTPUT_ARGUMENTS* pOutputArguments)
pInputArgumentsD3D12_VIDEO_ENCODER_RESOLVE_INPUT_PARAM_LAYOUT_INPUT_ARGUMENTS*in入力パラメーターレイアウト解決の入力を記述するD3D12_VIDEO_ENCODER_RESOLVE_INPUT_PARAM_LAYOUT_INPUT_ARGUMENTS構造体へのポインター。
pOutputArgumentsD3D12_VIDEO_ENCODER_RESOLVE_INPUT_PARAM_LAYOUT_OUTPUT_ARGUMENTS*in解決済みレイアウトを受け取るD3D12_VIDEO_ENCODER_RESOLVE_INPUT_PARAM_LAYOUT_OUTPUT_ARGUMENTS構造体へのポインター。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_ID3D12VideoEncodeCommandList4 "{69AEB5B7-55F2-4012-8B73-3A88D65A204C}"
#usecom global ID3D12VideoEncodeCommandList4 IID_ID3D12VideoEncodeCommandList4 "{}"
#comfunc global ID3D12VideoEncodeCommandList4_EncodeFrame1                   30 sptr,sptr,var,var
#comfunc global ID3D12VideoEncodeCommandList4_ResolveEncoderOutputMetadata1  31 var,var
#comfunc global ID3D12VideoEncodeCommandList4_ResolveInputParamLayout        32 var,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。