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

IWMPEffects

COM
IIDd3984c13-c3cb-48e2-8be5-5168340b4f35継承元IUnknown自前メソッド開始 vtbl3

メソッド 11

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

vtbl 3 HRESULT Render(TimedLevel* pLevels, HDC hdc, RECT* prc)
pLevelsTimedLevel*inout周波数/波形のオーディオレベルと時刻を格納したTimedLevel構造体へのポインタ。
hdcHDCin描画先のデバイスコンテキストハンドル。
prcRECT*inout描画領域を示すRECTへのポインタ。
vtbl 4 HRESULT MediaInfo(INT lChannelCount, INT lSampleRate, LPWSTR bstrTitle)
lChannelCountINTin現在のメディアのチャネル数。
lSampleRateINTin現在のメディアのサンプリングレート(Hz)。
bstrTitleLPWSTRin現在のメディアのタイトル文字列。
vtbl 5 HRESULT GetCapabilities(DWORD* pdwCapabilities)
pdwCapabilitiesDWORD*inout可視化効果が対応する機能を示す能力フラグを受け取る出力先。
vtbl 6 HRESULT GetTitle(LPWSTR* bstrTitle)
bstrTitleLPWSTR*inout効果プラグインの表示名を受け取る出力先。
vtbl 7 HRESULT GetPresetTitle(INT nPreset, LPWSTR* bstrPresetTitle)
nPresetINTin対象プリセットの0始まりインデックス。
bstrPresetTitleLPWSTR*inout指定プリセットの表示名を受け取る出力先。
vtbl 8 HRESULT GetPresetCount(INT* pnPresetCount)
pnPresetCountINT*inout利用可能なプリセット数を受け取る出力先。
vtbl 9 HRESULT SetCurrentPreset(INT nPreset)
nPresetINTin適用するプリセットの0始まりインデックス。
vtbl 10 HRESULT GetCurrentPreset(INT* pnPreset)
pnPresetINT*inout現在適用中のプリセットインデックスを受け取る出力先。
vtbl 11 HRESULT DisplayPropertyPage(HWND hwndOwner)
hwndOwnerHWNDinプロパティページの親となるウィンドウハンドル。
vtbl 12 HRESULT GoFullscreen(BOOL fFullScreen)
fFullScreenBOOLin全画面表示に切り替えるか否かを示すBOOL。
vtbl 13 HRESULT RenderFullScreen(TimedLevel* pLevels)
pLevelsTimedLevel*inout全画面描画に用いるオーディオレベルを格納したTimedLevelへのポインタ。

HSP用 COM定義

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

出力引数:
#define global IID_IWMPEffects "{D3984C13-C3CB-48E2-8BE5-5168340B4F35}"
#usecom global IWMPEffects IID_IWMPEffects "{}"
#comfunc global IWMPEffects_Render               3 var,sptr,var
#comfunc global IWMPEffects_MediaInfo            4 int,int,wstr
#comfunc global IWMPEffects_GetCapabilities      5 var
#comfunc global IWMPEffects_GetTitle             6 var
#comfunc global IWMPEffects_GetPresetTitle       7 int,var
#comfunc global IWMPEffects_GetPresetCount       8 var
#comfunc global IWMPEffects_SetCurrentPreset     9 int
#comfunc global IWMPEffects_GetCurrentPreset     10 var
#comfunc global IWMPEffects_DisplayPropertyPage  11 sptr
#comfunc global IWMPEffects_GoFullscreen         12 int
#comfunc global IWMPEffects_RenderFullScreen     13 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。