Win32 API 日本語リファレンス
ホームMedia.DirectShow.Tv › IStreamBufferSink

IStreamBufferSink

COM
IIDafd1f242-7efd-45ee-ba4e-407a25c9a77a継承元IUnknown自前メソッド開始 vtbl3

メソッド 3

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

vtbl 3 HRESULT LockProfile(LPWSTR pszStreamBufferFilename)
pszStreamBufferFilenameLPWSTRinロックして使用するストリームバッファファイルのパス文字列。NULLで既定を使用。
vtbl 4 HRESULT CreateRecorder(LPWSTR pszFilename, DWORD dwRecordType, IUnknown** pRecordingIUnknown)
pszFilenameLPWSTRin録画出力先ファイルのパス文字列。
dwRecordTypeDWORDin録画の種別を表す値。コンテンツ録画/参照録画等を指定する。
pRecordingIUnknownIUnknown**out生成された録画オブジェクト(IUnknown)を受け取る出力先。
vtbl 5 HRESULT IsProfileLocked()

HSP用 COM定義

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

#define global IID_IStreamBufferSink "{AFD1F242-7EFD-45EE-BA4E-407A25C9A77A}"
#usecom global IStreamBufferSink IID_IStreamBufferSink "{}"
#comfunc global IStreamBufferSink_LockProfile      3 wstr
#comfunc global IStreamBufferSink_CreateRecorder   4 wstr,int,sptr
#comfunc global IStreamBufferSink_IsProfileLocked  5
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。