📄 vmr9.h
字号:
/* [in] */ DWORD AspectRatioMode);
HRESULT ( STDMETHODCALLTYPE *SetVideoClippingWindow )(
IVMRWindowlessControl9 * This,
/* [in] */ HWND hwnd);
HRESULT ( STDMETHODCALLTYPE *RepaintVideo )(
IVMRWindowlessControl9 * This,
/* [in] */ HWND hwnd,
/* [in] */ HDC hdc);
HRESULT ( STDMETHODCALLTYPE *DisplayModeChanged )(
IVMRWindowlessControl9 * This);
HRESULT ( STDMETHODCALLTYPE *GetCurrentImage )(
IVMRWindowlessControl9 * This,
/* [out] */ BYTE **lpDib);
HRESULT ( STDMETHODCALLTYPE *SetBorderColor )(
IVMRWindowlessControl9 * This,
/* [in] */ COLORREF Clr);
HRESULT ( STDMETHODCALLTYPE *GetBorderColor )(
IVMRWindowlessControl9 * This,
/* [out] */ COLORREF *lpClr);
END_INTERFACE
} IVMRWindowlessControl9Vtbl;
interface IVMRWindowlessControl9
{
CONST_VTBL struct IVMRWindowlessControl9Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IVMRWindowlessControl9_QueryInterface(This,riid,ppvObject) \
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
#define IVMRWindowlessControl9_AddRef(This) \
(This)->lpVtbl -> AddRef(This)
#define IVMRWindowlessControl9_Release(This) \
(This)->lpVtbl -> Release(This)
#define IVMRWindowlessControl9_GetNativeVideoSize(This,lpWidth,lpHeight,lpARWidth,lpARHeight) \
(This)->lpVtbl -> GetNativeVideoSize(This,lpWidth,lpHeight,lpARWidth,lpARHeight)
#define IVMRWindowlessControl9_GetMinIdealVideoSize(This,lpWidth,lpHeight) \
(This)->lpVtbl -> GetMinIdealVideoSize(This,lpWidth,lpHeight)
#define IVMRWindowlessControl9_GetMaxIdealVideoSize(This,lpWidth,lpHeight) \
(This)->lpVtbl -> GetMaxIdealVideoSize(This,lpWidth,lpHeight)
#define IVMRWindowlessControl9_SetVideoPosition(This,lpSRCRect,lpDSTRect) \
(This)->lpVtbl -> SetVideoPosition(This,lpSRCRect,lpDSTRect)
#define IVMRWindowlessControl9_GetVideoPosition(This,lpSRCRect,lpDSTRect) \
(This)->lpVtbl -> GetVideoPosition(This,lpSRCRect,lpDSTRect)
#define IVMRWindowlessControl9_GetAspectRatioMode(This,lpAspectRatioMode) \
(This)->lpVtbl -> GetAspectRatioMode(This,lpAspectRatioMode)
#define IVMRWindowlessControl9_SetAspectRatioMode(This,AspectRatioMode) \
(This)->lpVtbl -> SetAspectRatioMode(This,AspectRatioMode)
#define IVMRWindowlessControl9_SetVideoClippingWindow(This,hwnd) \
(This)->lpVtbl -> SetVideoClippingWindow(This,hwnd)
#define IVMRWindowlessControl9_RepaintVideo(This,hwnd,hdc) \
(This)->lpVtbl -> RepaintVideo(This,hwnd,hdc)
#define IVMRWindowlessControl9_DisplayModeChanged(This) \
(This)->lpVtbl -> DisplayModeChanged(This)
#define IVMRWindowlessControl9_GetCurrentImage(This,lpDib) \
(This)->lpVtbl -> GetCurrentImage(This,lpDib)
#define IVMRWindowlessControl9_SetBorderColor(This,Clr) \
(This)->lpVtbl -> SetBorderColor(This,Clr)
#define IVMRWindowlessControl9_GetBorderColor(This,lpClr) \
(This)->lpVtbl -> GetBorderColor(This,lpClr)
#endif /* COBJMACROS */
#endif /* C style interface */
HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetNativeVideoSize_Proxy(
IVMRWindowlessControl9 * This,
/* [out] */ LONG *lpWidth,
/* [out] */ LONG *lpHeight,
/* [out] */ LONG *lpARWidth,
/* [out] */ LONG *lpARHeight);
void __RPC_STUB IVMRWindowlessControl9_GetNativeVideoSize_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetMinIdealVideoSize_Proxy(
IVMRWindowlessControl9 * This,
/* [out] */ LONG *lpWidth,
/* [out] */ LONG *lpHeight);
void __RPC_STUB IVMRWindowlessControl9_GetMinIdealVideoSize_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetMaxIdealVideoSize_Proxy(
IVMRWindowlessControl9 * This,
/* [out] */ LONG *lpWidth,
/* [out] */ LONG *lpHeight);
void __RPC_STUB IVMRWindowlessControl9_GetMaxIdealVideoSize_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_SetVideoPosition_Proxy(
IVMRWindowlessControl9 * This,
/* [in] */ const LPRECT lpSRCRect,
/* [in] */ const LPRECT lpDSTRect);
void __RPC_STUB IVMRWindowlessControl9_SetVideoPosition_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetVideoPosition_Proxy(
IVMRWindowlessControl9 * This,
/* [out] */ LPRECT lpSRCRect,
/* [out] */ LPRECT lpDSTRect);
void __RPC_STUB IVMRWindowlessControl9_GetVideoPosition_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetAspectRatioMode_Proxy(
IVMRWindowlessControl9 * This,
/* [out] */ DWORD *lpAspectRatioMode);
void __RPC_STUB IVMRWindowlessControl9_GetAspectRatioMode_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_SetAspectRatioMode_Proxy(
IVMRWindowlessControl9 * This,
/* [in] */ DWORD AspectRatioMode);
void __RPC_STUB IVMRWindowlessControl9_SetAspectRatioMode_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_SetVideoClippingWindow_Proxy(
IVMRWindowlessControl9 * This,
/* [in] */ HWND hwnd);
void __RPC_STUB IVMRWindowlessControl9_SetVideoClippingWindow_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_RepaintVideo_Proxy(
IVMRWindowlessControl9 * This,
/* [in] */ HWND hwnd,
/* [in] */ HDC hdc);
void __RPC_STUB IVMRWindowlessControl9_RepaintVideo_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_DisplayModeChanged_Proxy(
IVMRWindowlessControl9 * This);
void __RPC_STUB IVMRWindowlessControl9_DisplayModeChanged_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetCurrentImage_Proxy(
IVMRWindowlessControl9 * This,
/* [out] */ BYTE **lpDib);
void __RPC_STUB IVMRWindowlessControl9_GetCurrentImage_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_SetBorderColor_Proxy(
IVMRWindowlessControl9 * This,
/* [in] */ COLORREF Clr);
void __RPC_STUB IVMRWindowlessControl9_SetBorderColor_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetBorderColor_Proxy(
IVMRWindowlessControl9 * This,
/* [out] */ COLORREF *lpClr);
void __RPC_STUB IVMRWindowlessControl9_GetBorderColor_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
#endif /* __IVMRWindowlessControl9_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_vmr9_0012 */
/* [local] */
typedef /* [public] */
enum __MIDL___MIDL_itf_vmr9_0012_0001
{ MixerPref9_NoDecimation = 0x1,
MixerPref9_DecimateOutput = 0x2,
MixerPref9_DecimationReserved = 0xc,
MixerPref9_DecimateMask = 0xf,
MixerPref9_BiLinearFiltering = 0x10,
MixerPref9_PointFiltering = 0x20,
MixerPref9_AnisotropicFiltering = 0x40,
MixerPref9_PyramidalQuadFiltering = 0x80,
MixerPref9_GaussianQuadFiltering = 0x100,
MixerPref9_FilteringReserved = 0xe00,
MixerPref9_FilteringMask = 0xff0,
MixerPref9_RenderTargetRGB = 0x1000,
MixerPref9_RenderTargetReserved = 0xfe000,
MixerPref9_RenderTargetMask = 0xff000
} VMR9MixerPrefs;
typedef struct _VMR9NormalizedRect
{
float left;
float top;
float right;
float bottom;
} VMR9NormalizedRect;
typedef /* [public][public][public] */
enum __MIDL___MIDL_itf_vmr9_0012_0002
{ ProcAmpControl9_Brightness = 0x1,
ProcAmpControl9_Contrast = 0x2,
ProcAmpControl9_Hue = 0x4,
ProcAmpControl9_Saturation = 0x8,
ProcAmpControl9_Mask = 0xf
} VMR9ProcAmpControlFlags;
typedef struct _VMR9ProcAmpControl
{
DWORD dwSize;
DWORD dwFlags;
float Brightness;
float Contrast;
float Hue;
float Saturation;
} VMR9ProcAmpControl;
typedef struct _VMR9ProcAmpControlRange
{
DWORD dwSize;
VMR9ProcAmpControlFlags dwProperty;
float MinValue;
float MaxValue;
float DefaultValue;
float StepSize;
} VMR9ProcAmpControlRange;
extern RPC_IF_HANDLE __MIDL_itf_vmr9_0012_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_vmr9_0012_v0_0_s_ifspec;
#ifndef __IVMRMixerControl9_INTERFACE_DEFINED__
#define __IVMRMixerControl9_INTERFACE_DEFINED__
/* interface IVMRMixerControl9 */
/* [unique][helpstring][uuid][local][object][local] */
EXTERN_C const IID IID_IVMRMixerControl9;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("1a777eaa-47c8-4930-b2c9-8fee1c1b0f3b")
IVMRMixerControl9 : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE SetAlpha(
/* [in] */ DWORD dwStreamID,
/* [in] */ float Alpha) = 0;
virtual HRESULT STDMETHODCALLTYPE GetAlpha(
/* [in] */ DWORD dwStreamID,
/* [out] */ float *pAlpha) = 0;
virtual HRESULT STDMETHODCALLTYPE SetZOrder(
/* [in] */ DWORD dwStreamID,
/* [in] */ DWORD dwZ) = 0;
virtual HRESULT STDMETHODCALLTYPE GetZOrder(
/* [in] */ DWORD dwStreamID,
/* [out] */ DWORD *pZ) = 0;
virtual HRESULT STDMETHODCALLTYPE SetOutputRect(
/* [in] */ DWORD dwStreamID,
/* [in] */ const VMR9NormalizedRect *pRect) = 0;
virtual HRESULT STDMETHODCALLTYPE GetOutputRect(
/* [in] */ DWORD dwStreamID,
/* [out] */ VMR9NormalizedRect *pRect) = 0;
virtual HRESULT STDMETHODCALLTYPE SetBackgroundClr(
/* [in] */ COLORREF ClrBkg) = 0;
virtual HRESULT STDMETHODCALLTYPE GetBackgroundClr(
/* [in] */ COLORREF *lpClrBkg) = 0;
virtual HRESULT STDMETHODCALLTYPE SetMixingPrefs(
/* [in] */ DWORD dwMixerPrefs) = 0;
virtual HRESULT STDMETHODCALLTYPE GetMixingPrefs(
/* [out] */ DWORD *pdwMixerPrefs) = 0;
virtual HRESULT STDMETHODCALLTYPE SetProcAmpControl(
/* [in] */ DWORD dwStreamID,
/* [in] */ VMR9ProcAmpControl *lpClrControl) = 0;
virtual HRESULT STDMETHODCALLTYPE GetProcAmpControl(
/* [in] */ DWORD dwStreamID,
/* [out][in] */ VMR9ProcAmpControl *lpClrControl) = 0;
virtual HRESULT STDMETHODCALLTYPE GetProcAmpControlRange(
/* [in] */ DWORD dwStreamID,
/* [out][in] */ VMR9ProcAmpControlRange *lpClrControl) = 0;
};
#else /* C style interface */
typedef struct IVMRMixerControl9Vtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IVMRMixerControl9 * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IVMRMixerControl9 * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IVMRMixerControl9 * This);
HRESULT ( STDMETHODCALLTYPE *SetAlpha )(
IVMRMixerControl9 * This,
/* [in] */ DWORD dwStreamID,
/* [in] */ float Alpha);
HRESULT ( STDMETHODCALLTYPE *GetAlpha )(
IVMRMixerControl9 * This,
/* [in] */ DWORD dwStreamID,
/* [out] */ float *pAlpha);
HRESULT ( STDMETHODCALLTYPE *SetZOrder )(
IVMRMixerControl9 * This,
/* [in] */ DWORD dwStreamID,
/* [in] */ DWORD dwZ);
HRESULT ( STDMETHODCALLTYPE *GetZOrder )(
IVMRMixerControl9 * This,
/* [in] */ DWORD dwStreamID,
/* [out] */ DWORD *pZ);
HRESULT ( STDMETHODCALLTYPE *SetOutputRect )(
IVMRMixerControl9 * This,
/* [in] */ DWORD dwStreamID,
/* [in] */ const VMR9NormalizedRect *pRect);
HRESULT ( STDMETHODCALLTYPE *GetOutputRect )(
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -