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

IBaseVideoMixer

COM
IID61ded640-e912-11ce-a099-00aa00479a58継承元IUnknown自前メソッド開始 vtbl3

メソッド 7

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

vtbl 3 HRESULT SetLeadPin(INT iPin)
iPinINTinミキシング基準となるリードピンの0起点インデックス入力。
vtbl 4 HRESULT GetLeadPin(INT* piPin)
piPinINT*out現在のリードピンインデックスをINT*で受け取る出力。
vtbl 5 HRESULT GetInputPinCount(INT* piPinCount)
piPinCountINT*outミキサの入力ピン総数をINT*で受け取る出力。
vtbl 6 HRESULT IsUsingClock(INT* pbValue)
pbValueINT*outクロック同期使用の現在状態をINT*(BOOL相当)で受け取る出力。
vtbl 7 HRESULT SetUsingClock(INT bValue)
bValueINTinクロック同期を使用するか否かを指定するINT(BOOL相当)入力。
vtbl 8 HRESULT GetClockPeriod(INT* pbValue)
pbValueINT*out現在のクロック周期値をINT*で受け取る出力。
vtbl 9 HRESULT SetClockPeriod(INT bValue)
bValueINTin設定するクロック周期値をINTで指定する入力。

HSP用 COM定義

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

出力引数:
#define global IID_IBaseVideoMixer "{61DED640-E912-11CE-A099-00AA00479A58}"
#usecom global IBaseVideoMixer IID_IBaseVideoMixer "{}"
#comfunc global IBaseVideoMixer_SetLeadPin        3 int
#comfunc global IBaseVideoMixer_GetLeadPin        4 var
#comfunc global IBaseVideoMixer_GetInputPinCount  5 var
#comfunc global IBaseVideoMixer_IsUsingClock      6 var
#comfunc global IBaseVideoMixer_SetUsingClock     7 int
#comfunc global IBaseVideoMixer_GetClockPeriod    8 var
#comfunc global IBaseVideoMixer_SetClockPeriod    9 int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。