mirror of https://github.com/UMSKT/xpmgr.git
1952 lines
57 KiB
C++
1952 lines
57 KiB
C++
|
|
|
|
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
|
|
|
|
|
|
/* File created by MIDL compiler version 7.00.0555 */
|
|
/* Compiler settings for evr.idl:
|
|
Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 7.00.0555
|
|
protocol : dce , ms_ext, c_ext, robust
|
|
error checks: allocation ref bounds_check enum stub_data
|
|
VC __declspec() decoration level:
|
|
__declspec(uuid()), __declspec(selectany), __declspec(novtable)
|
|
DECLSPEC_UUID(), MIDL_INTERFACE()
|
|
*/
|
|
/* @@MIDL_FILE_HEADING( ) */
|
|
|
|
#pragma warning( disable: 4049 ) /* more than 64k source lines */
|
|
|
|
|
|
/* verify that the <rpcndr.h> version is high enough to compile this file*/
|
|
#ifndef __REQUIRED_RPCNDR_H_VERSION__
|
|
#define __REQUIRED_RPCNDR_H_VERSION__ 500
|
|
#endif
|
|
|
|
/* verify that the <rpcsal.h> version is high enough to compile this file*/
|
|
#ifndef __REQUIRED_RPCSAL_H_VERSION__
|
|
#define __REQUIRED_RPCSAL_H_VERSION__ 100
|
|
#endif
|
|
|
|
#include "rpc.h"
|
|
#include "rpcndr.h"
|
|
|
|
#ifndef __RPCNDR_H_VERSION__
|
|
#error this stub requires an updated version of <rpcndr.h>
|
|
#endif // __RPCNDR_H_VERSION__
|
|
|
|
#ifndef COM_NO_WINDOWS_H
|
|
#include "windows.h"
|
|
#include "ole2.h"
|
|
#endif /*COM_NO_WINDOWS_H*/
|
|
|
|
#ifndef __evr_h__
|
|
#define __evr_h__
|
|
|
|
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
|
|
#pragma once
|
|
#endif
|
|
|
|
/* Forward Declarations */
|
|
|
|
#ifndef __IMFVideoPositionMapper_FWD_DEFINED__
|
|
#define __IMFVideoPositionMapper_FWD_DEFINED__
|
|
typedef interface IMFVideoPositionMapper IMFVideoPositionMapper;
|
|
#endif /* __IMFVideoPositionMapper_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFVideoDeviceID_FWD_DEFINED__
|
|
#define __IMFVideoDeviceID_FWD_DEFINED__
|
|
typedef interface IMFVideoDeviceID IMFVideoDeviceID;
|
|
#endif /* __IMFVideoDeviceID_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFVideoDisplayControl_FWD_DEFINED__
|
|
#define __IMFVideoDisplayControl_FWD_DEFINED__
|
|
typedef interface IMFVideoDisplayControl IMFVideoDisplayControl;
|
|
#endif /* __IMFVideoDisplayControl_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFVideoPresenter_FWD_DEFINED__
|
|
#define __IMFVideoPresenter_FWD_DEFINED__
|
|
typedef interface IMFVideoPresenter IMFVideoPresenter;
|
|
#endif /* __IMFVideoPresenter_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFDesiredSample_FWD_DEFINED__
|
|
#define __IMFDesiredSample_FWD_DEFINED__
|
|
typedef interface IMFDesiredSample IMFDesiredSample;
|
|
#endif /* __IMFDesiredSample_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFTrackedSample_FWD_DEFINED__
|
|
#define __IMFTrackedSample_FWD_DEFINED__
|
|
typedef interface IMFTrackedSample IMFTrackedSample;
|
|
#endif /* __IMFTrackedSample_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFVideoMixerControl_FWD_DEFINED__
|
|
#define __IMFVideoMixerControl_FWD_DEFINED__
|
|
typedef interface IMFVideoMixerControl IMFVideoMixerControl;
|
|
#endif /* __IMFVideoMixerControl_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFVideoMixerControl2_FWD_DEFINED__
|
|
#define __IMFVideoMixerControl2_FWD_DEFINED__
|
|
typedef interface IMFVideoMixerControl2 IMFVideoMixerControl2;
|
|
#endif /* __IMFVideoMixerControl2_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFVideoRenderer_FWD_DEFINED__
|
|
#define __IMFVideoRenderer_FWD_DEFINED__
|
|
typedef interface IMFVideoRenderer IMFVideoRenderer;
|
|
#endif /* __IMFVideoRenderer_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IEVRFilterConfig_FWD_DEFINED__
|
|
#define __IEVRFilterConfig_FWD_DEFINED__
|
|
typedef interface IEVRFilterConfig IEVRFilterConfig;
|
|
#endif /* __IEVRFilterConfig_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IEVRFilterConfigEx_FWD_DEFINED__
|
|
#define __IEVRFilterConfigEx_FWD_DEFINED__
|
|
typedef interface IEVRFilterConfigEx IEVRFilterConfigEx;
|
|
#endif /* __IEVRFilterConfigEx_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFTopologyServiceLookup_FWD_DEFINED__
|
|
#define __IMFTopologyServiceLookup_FWD_DEFINED__
|
|
typedef interface IMFTopologyServiceLookup IMFTopologyServiceLookup;
|
|
#endif /* __IMFTopologyServiceLookup_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFTopologyServiceLookupClient_FWD_DEFINED__
|
|
#define __IMFTopologyServiceLookupClient_FWD_DEFINED__
|
|
typedef interface IMFTopologyServiceLookupClient IMFTopologyServiceLookupClient;
|
|
#endif /* __IMFTopologyServiceLookupClient_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IEVRTrustedVideoPlugin_FWD_DEFINED__
|
|
#define __IEVRTrustedVideoPlugin_FWD_DEFINED__
|
|
typedef interface IEVRTrustedVideoPlugin IEVRTrustedVideoPlugin;
|
|
#endif /* __IEVRTrustedVideoPlugin_FWD_DEFINED__ */
|
|
|
|
|
|
/* header files for imported files */
|
|
#include "unknwn.h"
|
|
#include "propidl.h"
|
|
#include "mfidl.h"
|
|
#include "strmif.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"{
|
|
#endif
|
|
|
|
|
|
/* interface __MIDL_itf_evr_0000_0000 */
|
|
/* [local] */
|
|
|
|
#if defined(__midl)
|
|
typedef
|
|
enum _D3DFORMAT
|
|
{ D3DFMT_UNKNOWN = 0,
|
|
D3DFMT_R8G8B8 = 20,
|
|
D3DFMT_A8R8G8B8 = 21,
|
|
D3DFMT_X8R8G8B8 = 22,
|
|
D3DFMT_R5G6B5 = 23,
|
|
D3DFMT_X1R5G5B5 = 24,
|
|
D3DFMT_A1R5G5B5 = 25,
|
|
D3DFMT_A4R4G4B4 = 26,
|
|
D3DFMT_R3G3B2 = 27,
|
|
D3DFMT_A8 = 28,
|
|
D3DFMT_A8R3G3B2 = 29,
|
|
D3DFMT_X4R4G4B4 = 30,
|
|
D3DFMT_A2B10G10R10 = 31,
|
|
D3DFMT_G16R16 = 34,
|
|
D3DFMT_A8P8 = 40,
|
|
D3DFMT_P8 = 41,
|
|
D3DFMT_L8 = 50,
|
|
D3DFMT_A8L8 = 51,
|
|
D3DFMT_A4L4 = 52,
|
|
D3DFMT_V8U8 = 60,
|
|
D3DFMT_L6V5U5 = 61,
|
|
D3DFMT_X8L8V8U8 = 62,
|
|
D3DFMT_Q8W8V8U8 = 63,
|
|
D3DFMT_V16U16 = 64,
|
|
D3DFMT_W11V11U10 = 65,
|
|
D3DFMT_A2W10V10U10 = 67,
|
|
D3DFMT_D16_LOCKABLE = 70,
|
|
D3DFMT_D32 = 71,
|
|
D3DFMT_D15S1 = 73,
|
|
D3DFMT_D24S8 = 75,
|
|
D3DFMT_D16 = 80,
|
|
D3DFMT_D24X8 = 77,
|
|
D3DFMT_D24X4S4 = 79,
|
|
D3DFMT_VERTEXDATA = 100,
|
|
D3DFMT_INDEX16 = 101,
|
|
D3DFMT_INDEX32 = 102,
|
|
D3DFMT_FORCE_DWORD = 0x7fffffff
|
|
} D3DFORMAT;
|
|
|
|
#endif // __midl
|
|
DEFINE_GUID(MR_VIDEO_RENDER_SERVICE,
|
|
0x1092a86c,
|
|
0xab1a,
|
|
0x459a,
|
|
0xa3, 0x36, 0x83, 0x1f, 0xbc, 0x4d, 0x11, 0xff
|
|
);
|
|
DEFINE_GUID(MR_VIDEO_MIXER_SERVICE,
|
|
0x73cd2fc,
|
|
0x6cf4,
|
|
0x40b7,
|
|
0x88, 0x59, 0xe8, 0x95, 0x52, 0xc8, 0x41, 0xf8
|
|
);
|
|
DEFINE_GUID(MR_VIDEO_ACCELERATION_SERVICE,
|
|
0xefef5175,
|
|
0x5c7d,
|
|
0x4ce2,
|
|
0xbb, 0xbd, 0x34, 0xff, 0x8b, 0xca, 0x65, 0x54
|
|
);
|
|
DEFINE_GUID(MR_BUFFER_SERVICE,
|
|
0xa562248c,
|
|
0x9ac6,
|
|
0x4ffc,
|
|
0x9f, 0xba, 0x3a, 0xf8, 0xf8, 0xad, 0x1a, 0x4d
|
|
);
|
|
DEFINE_GUID(VIDEO_ZOOM_RECT,
|
|
0x7aaa1638,
|
|
0x1b7f,
|
|
0x4c93,
|
|
0xbd, 0x89, 0x5b, 0x9c, 0x9f, 0xb6, 0xfc, 0xf0
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0000_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0000_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFVideoPositionMapper_INTERFACE_DEFINED__
|
|
#define __IMFVideoPositionMapper_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFVideoPositionMapper */
|
|
/* [local][helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFVideoPositionMapper;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("1F6A9F17-E70B-4e24-8AE4-0B2C3BA7A4AE")
|
|
IMFVideoPositionMapper : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE MapOutputCoordinateToInputStream(
|
|
/* [in] */ float xOut,
|
|
/* [in] */ float yOut,
|
|
/* [in] */ DWORD dwOutputStreamIndex,
|
|
/* [in] */ DWORD dwInputStreamIndex,
|
|
/* [annotation][out] */
|
|
__out float *pxIn,
|
|
/* [annotation][out] */
|
|
__out float *pyIn) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFVideoPositionMapperVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFVideoPositionMapper * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFVideoPositionMapper * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFVideoPositionMapper * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *MapOutputCoordinateToInputStream )(
|
|
IMFVideoPositionMapper * This,
|
|
/* [in] */ float xOut,
|
|
/* [in] */ float yOut,
|
|
/* [in] */ DWORD dwOutputStreamIndex,
|
|
/* [in] */ DWORD dwInputStreamIndex,
|
|
/* [annotation][out] */
|
|
__out float *pxIn,
|
|
/* [annotation][out] */
|
|
__out float *pyIn);
|
|
|
|
END_INTERFACE
|
|
} IMFVideoPositionMapperVtbl;
|
|
|
|
interface IMFVideoPositionMapper
|
|
{
|
|
CONST_VTBL struct IMFVideoPositionMapperVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFVideoPositionMapper_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFVideoPositionMapper_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFVideoPositionMapper_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFVideoPositionMapper_MapOutputCoordinateToInputStream(This,xOut,yOut,dwOutputStreamIndex,dwInputStreamIndex,pxIn,pyIn) \
|
|
( (This)->lpVtbl -> MapOutputCoordinateToInputStream(This,xOut,yOut,dwOutputStreamIndex,dwInputStreamIndex,pxIn,pyIn) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFVideoPositionMapper_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFVideoDeviceID_INTERFACE_DEFINED__
|
|
#define __IMFVideoDeviceID_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFVideoDeviceID */
|
|
/* [local][helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFVideoDeviceID;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("A38D9567-5A9C-4f3c-B293-8EB415B279BA")
|
|
IMFVideoDeviceID : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetDeviceID(
|
|
/* [annotation][out] */
|
|
__out IID *pDeviceID) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFVideoDeviceIDVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFVideoDeviceID * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFVideoDeviceID * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFVideoDeviceID * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDeviceID )(
|
|
IMFVideoDeviceID * This,
|
|
/* [annotation][out] */
|
|
__out IID *pDeviceID);
|
|
|
|
END_INTERFACE
|
|
} IMFVideoDeviceIDVtbl;
|
|
|
|
interface IMFVideoDeviceID
|
|
{
|
|
CONST_VTBL struct IMFVideoDeviceIDVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFVideoDeviceID_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFVideoDeviceID_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFVideoDeviceID_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFVideoDeviceID_GetDeviceID(This,pDeviceID) \
|
|
( (This)->lpVtbl -> GetDeviceID(This,pDeviceID) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFVideoDeviceID_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_evr_0000_0002 */
|
|
/* [local] */
|
|
|
|
typedef
|
|
enum MFVideoAspectRatioMode
|
|
{ MFVideoARMode_None = 0,
|
|
MFVideoARMode_PreservePicture = 0x1,
|
|
MFVideoARMode_PreservePixel = 0x2,
|
|
MFVideoARMode_NonLinearStretch = 0x4,
|
|
MFVideoARMode_Mask = 0x7
|
|
} MFVideoAspectRatioMode;
|
|
|
|
typedef
|
|
enum MFVideoRenderPrefs
|
|
{ MFVideoRenderPrefs_DoNotRenderBorder = 0x1,
|
|
MFVideoRenderPrefs_DoNotClipToDevice = 0x2,
|
|
MFVideoRenderPrefs_AllowOutputThrottling = 0x4,
|
|
MFVideoRenderPrefs_ForceOutputThrottling = 0x8,
|
|
MFVideoRenderPrefs_ForceBatching = 0x10,
|
|
MFVideoRenderPrefs_AllowBatching = 0x20,
|
|
MFVideoRenderPrefs_ForceScaling = 0x40,
|
|
MFVideoRenderPrefs_AllowScaling = 0x80,
|
|
MFVideoRenderPrefs_DoNotRepaintOnStop = 0x100,
|
|
MFVideoRenderPrefs_Mask = 0x1ff
|
|
} MFVideoRenderPrefs;
|
|
|
|
typedef struct MFVideoNormalizedRect
|
|
{
|
|
float left;
|
|
float top;
|
|
float right;
|
|
float bottom;
|
|
} MFVideoNormalizedRect;
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0002_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0002_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFVideoDisplayControl_INTERFACE_DEFINED__
|
|
#define __IMFVideoDisplayControl_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFVideoDisplayControl */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFVideoDisplayControl;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("a490b1e4-ab84-4d31-a1b2-181e03b1077a")
|
|
IMFVideoDisplayControl : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetNativeVideoSize(
|
|
/* [unique][out][in] */ __RPC__inout_opt SIZE *pszVideo,
|
|
/* [unique][out][in] */ __RPC__inout_opt SIZE *pszARVideo) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetIdealVideoSize(
|
|
/* [unique][out][in] */ __RPC__inout_opt SIZE *pszMin,
|
|
/* [unique][out][in] */ __RPC__inout_opt SIZE *pszMax) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoPosition(
|
|
/* [unique][in] */ __RPC__in_opt const MFVideoNormalizedRect *pnrcSource,
|
|
/* [unique][in] */ __RPC__in_opt const LPRECT prcDest) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVideoPosition(
|
|
/* [out] */ __RPC__out MFVideoNormalizedRect *pnrcSource,
|
|
/* [out] */ __RPC__out LPRECT prcDest) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetAspectRatioMode(
|
|
/* [in] */ DWORD dwAspectRatioMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAspectRatioMode(
|
|
/* [out] */ __RPC__out DWORD *pdwAspectRatioMode) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetVideoWindow(
|
|
/* [in] */ __RPC__in HWND hwndVideo) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVideoWindow(
|
|
/* [out] */ __RPC__deref_out_opt HWND *phwndVideo) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RepaintVideo( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCurrentImage(
|
|
/* [out][in] */ __RPC__inout BITMAPINFOHEADER *pBih,
|
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*pcbDib) BYTE **pDib,
|
|
/* [out] */ __RPC__out DWORD *pcbDib,
|
|
/* [unique][out][in] */ __RPC__inout_opt LONGLONG *pTimeStamp) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetBorderColor(
|
|
/* [in] */ COLORREF Clr) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBorderColor(
|
|
/* [out] */ __RPC__out COLORREF *pClr) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetRenderingPrefs(
|
|
/* [in] */ DWORD dwRenderFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetRenderingPrefs(
|
|
/* [out] */ __RPC__out DWORD *pdwRenderFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetFullscreen(
|
|
/* [in] */ BOOL fFullscreen) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetFullscreen(
|
|
/* [out] */ __RPC__out BOOL *pfFullscreen) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFVideoDisplayControlVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IMFVideoDisplayControl * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IMFVideoDisplayControl * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetNativeVideoSize )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [unique][out][in] */ __RPC__inout_opt SIZE *pszVideo,
|
|
/* [unique][out][in] */ __RPC__inout_opt SIZE *pszARVideo);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetIdealVideoSize )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [unique][out][in] */ __RPC__inout_opt SIZE *pszMin,
|
|
/* [unique][out][in] */ __RPC__inout_opt SIZE *pszMax);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoPosition )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [unique][in] */ __RPC__in_opt const MFVideoNormalizedRect *pnrcSource,
|
|
/* [unique][in] */ __RPC__in_opt const LPRECT prcDest);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVideoPosition )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [out] */ __RPC__out MFVideoNormalizedRect *pnrcSource,
|
|
/* [out] */ __RPC__out LPRECT prcDest);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetAspectRatioMode )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [in] */ DWORD dwAspectRatioMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAspectRatioMode )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [out] */ __RPC__out DWORD *pdwAspectRatioMode);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetVideoWindow )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [in] */ __RPC__in HWND hwndVideo);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVideoWindow )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [out] */ __RPC__deref_out_opt HWND *phwndVideo);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RepaintVideo )(
|
|
__RPC__in IMFVideoDisplayControl * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCurrentImage )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [out][in] */ __RPC__inout BITMAPINFOHEADER *pBih,
|
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*pcbDib) BYTE **pDib,
|
|
/* [out] */ __RPC__out DWORD *pcbDib,
|
|
/* [unique][out][in] */ __RPC__inout_opt LONGLONG *pTimeStamp);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetBorderColor )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [in] */ COLORREF Clr);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBorderColor )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [out] */ __RPC__out COLORREF *pClr);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetRenderingPrefs )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [in] */ DWORD dwRenderFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetRenderingPrefs )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [out] */ __RPC__out DWORD *pdwRenderFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFullscreen )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [in] */ BOOL fFullscreen);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFullscreen )(
|
|
__RPC__in IMFVideoDisplayControl * This,
|
|
/* [out] */ __RPC__out BOOL *pfFullscreen);
|
|
|
|
END_INTERFACE
|
|
} IMFVideoDisplayControlVtbl;
|
|
|
|
interface IMFVideoDisplayControl
|
|
{
|
|
CONST_VTBL struct IMFVideoDisplayControlVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFVideoDisplayControl_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFVideoDisplayControl_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFVideoDisplayControl_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFVideoDisplayControl_GetNativeVideoSize(This,pszVideo,pszARVideo) \
|
|
( (This)->lpVtbl -> GetNativeVideoSize(This,pszVideo,pszARVideo) )
|
|
|
|
#define IMFVideoDisplayControl_GetIdealVideoSize(This,pszMin,pszMax) \
|
|
( (This)->lpVtbl -> GetIdealVideoSize(This,pszMin,pszMax) )
|
|
|
|
#define IMFVideoDisplayControl_SetVideoPosition(This,pnrcSource,prcDest) \
|
|
( (This)->lpVtbl -> SetVideoPosition(This,pnrcSource,prcDest) )
|
|
|
|
#define IMFVideoDisplayControl_GetVideoPosition(This,pnrcSource,prcDest) \
|
|
( (This)->lpVtbl -> GetVideoPosition(This,pnrcSource,prcDest) )
|
|
|
|
#define IMFVideoDisplayControl_SetAspectRatioMode(This,dwAspectRatioMode) \
|
|
( (This)->lpVtbl -> SetAspectRatioMode(This,dwAspectRatioMode) )
|
|
|
|
#define IMFVideoDisplayControl_GetAspectRatioMode(This,pdwAspectRatioMode) \
|
|
( (This)->lpVtbl -> GetAspectRatioMode(This,pdwAspectRatioMode) )
|
|
|
|
#define IMFVideoDisplayControl_SetVideoWindow(This,hwndVideo) \
|
|
( (This)->lpVtbl -> SetVideoWindow(This,hwndVideo) )
|
|
|
|
#define IMFVideoDisplayControl_GetVideoWindow(This,phwndVideo) \
|
|
( (This)->lpVtbl -> GetVideoWindow(This,phwndVideo) )
|
|
|
|
#define IMFVideoDisplayControl_RepaintVideo(This) \
|
|
( (This)->lpVtbl -> RepaintVideo(This) )
|
|
|
|
#define IMFVideoDisplayControl_GetCurrentImage(This,pBih,pDib,pcbDib,pTimeStamp) \
|
|
( (This)->lpVtbl -> GetCurrentImage(This,pBih,pDib,pcbDib,pTimeStamp) )
|
|
|
|
#define IMFVideoDisplayControl_SetBorderColor(This,Clr) \
|
|
( (This)->lpVtbl -> SetBorderColor(This,Clr) )
|
|
|
|
#define IMFVideoDisplayControl_GetBorderColor(This,pClr) \
|
|
( (This)->lpVtbl -> GetBorderColor(This,pClr) )
|
|
|
|
#define IMFVideoDisplayControl_SetRenderingPrefs(This,dwRenderFlags) \
|
|
( (This)->lpVtbl -> SetRenderingPrefs(This,dwRenderFlags) )
|
|
|
|
#define IMFVideoDisplayControl_GetRenderingPrefs(This,pdwRenderFlags) \
|
|
( (This)->lpVtbl -> GetRenderingPrefs(This,pdwRenderFlags) )
|
|
|
|
#define IMFVideoDisplayControl_SetFullscreen(This,fFullscreen) \
|
|
( (This)->lpVtbl -> SetFullscreen(This,fFullscreen) )
|
|
|
|
#define IMFVideoDisplayControl_GetFullscreen(This,pfFullscreen) \
|
|
( (This)->lpVtbl -> GetFullscreen(This,pfFullscreen) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFVideoDisplayControl_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_evr_0000_0003 */
|
|
/* [local] */
|
|
|
|
typedef
|
|
enum MFVP_MESSAGE_TYPE
|
|
{ MFVP_MESSAGE_FLUSH = 0,
|
|
MFVP_MESSAGE_INVALIDATEMEDIATYPE = 0x1,
|
|
MFVP_MESSAGE_PROCESSINPUTNOTIFY = 0x2,
|
|
MFVP_MESSAGE_BEGINSTREAMING = 0x3,
|
|
MFVP_MESSAGE_ENDSTREAMING = 0x4,
|
|
MFVP_MESSAGE_ENDOFSTREAM = 0x5,
|
|
MFVP_MESSAGE_STEP = 0x6,
|
|
MFVP_MESSAGE_CANCELSTEP = 0x7
|
|
} MFVP_MESSAGE_TYPE;
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0003_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0003_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFVideoPresenter_INTERFACE_DEFINED__
|
|
#define __IMFVideoPresenter_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFVideoPresenter */
|
|
/* [local][helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFVideoPresenter;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("29AFF080-182A-4a5d-AF3B-448F3A6346CB")
|
|
IMFVideoPresenter : public IMFClockStateSink
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE ProcessMessage(
|
|
MFVP_MESSAGE_TYPE eMessage,
|
|
ULONG_PTR ulParam) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCurrentMediaType(
|
|
/* [annotation][out] */
|
|
__deref_out IMFVideoMediaType **ppMediaType) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFVideoPresenterVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFVideoPresenter * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFVideoPresenter * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFVideoPresenter * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *OnClockStart )(
|
|
IMFVideoPresenter * This,
|
|
/* [in] */ MFTIME hnsSystemTime,
|
|
/* [in] */ LONGLONG llClockStartOffset);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *OnClockStop )(
|
|
IMFVideoPresenter * This,
|
|
/* [in] */ MFTIME hnsSystemTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *OnClockPause )(
|
|
IMFVideoPresenter * This,
|
|
/* [in] */ MFTIME hnsSystemTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *OnClockRestart )(
|
|
IMFVideoPresenter * This,
|
|
/* [in] */ MFTIME hnsSystemTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *OnClockSetRate )(
|
|
IMFVideoPresenter * This,
|
|
/* [in] */ MFTIME hnsSystemTime,
|
|
/* [in] */ float flRate);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ProcessMessage )(
|
|
IMFVideoPresenter * This,
|
|
MFVP_MESSAGE_TYPE eMessage,
|
|
ULONG_PTR ulParam);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCurrentMediaType )(
|
|
IMFVideoPresenter * This,
|
|
/* [annotation][out] */
|
|
__deref_out IMFVideoMediaType **ppMediaType);
|
|
|
|
END_INTERFACE
|
|
} IMFVideoPresenterVtbl;
|
|
|
|
interface IMFVideoPresenter
|
|
{
|
|
CONST_VTBL struct IMFVideoPresenterVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFVideoPresenter_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFVideoPresenter_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFVideoPresenter_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFVideoPresenter_OnClockStart(This,hnsSystemTime,llClockStartOffset) \
|
|
( (This)->lpVtbl -> OnClockStart(This,hnsSystemTime,llClockStartOffset) )
|
|
|
|
#define IMFVideoPresenter_OnClockStop(This,hnsSystemTime) \
|
|
( (This)->lpVtbl -> OnClockStop(This,hnsSystemTime) )
|
|
|
|
#define IMFVideoPresenter_OnClockPause(This,hnsSystemTime) \
|
|
( (This)->lpVtbl -> OnClockPause(This,hnsSystemTime) )
|
|
|
|
#define IMFVideoPresenter_OnClockRestart(This,hnsSystemTime) \
|
|
( (This)->lpVtbl -> OnClockRestart(This,hnsSystemTime) )
|
|
|
|
#define IMFVideoPresenter_OnClockSetRate(This,hnsSystemTime,flRate) \
|
|
( (This)->lpVtbl -> OnClockSetRate(This,hnsSystemTime,flRate) )
|
|
|
|
|
|
#define IMFVideoPresenter_ProcessMessage(This,eMessage,ulParam) \
|
|
( (This)->lpVtbl -> ProcessMessage(This,eMessage,ulParam) )
|
|
|
|
#define IMFVideoPresenter_GetCurrentMediaType(This,ppMediaType) \
|
|
( (This)->lpVtbl -> GetCurrentMediaType(This,ppMediaType) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFVideoPresenter_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFDesiredSample_INTERFACE_DEFINED__
|
|
#define __IMFDesiredSample_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFDesiredSample */
|
|
/* [local][helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFDesiredSample;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("56C294D0-753E-4260-8D61-A3D8820B1D54")
|
|
IMFDesiredSample : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetDesiredSampleTimeAndDuration(
|
|
/* [annotation][out] */
|
|
__out LONGLONG *phnsSampleTime,
|
|
/* [annotation][out] */
|
|
__out LONGLONG *phnsSampleDuration) = 0;
|
|
|
|
virtual void STDMETHODCALLTYPE SetDesiredSampleTimeAndDuration(
|
|
/* [in] */ LONGLONG hnsSampleTime,
|
|
/* [in] */ LONGLONG hnsSampleDuration) = 0;
|
|
|
|
virtual void STDMETHODCALLTYPE Clear( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFDesiredSampleVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFDesiredSample * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFDesiredSample * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFDesiredSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDesiredSampleTimeAndDuration )(
|
|
IMFDesiredSample * This,
|
|
/* [annotation][out] */
|
|
__out LONGLONG *phnsSampleTime,
|
|
/* [annotation][out] */
|
|
__out LONGLONG *phnsSampleDuration);
|
|
|
|
void ( STDMETHODCALLTYPE *SetDesiredSampleTimeAndDuration )(
|
|
IMFDesiredSample * This,
|
|
/* [in] */ LONGLONG hnsSampleTime,
|
|
/* [in] */ LONGLONG hnsSampleDuration);
|
|
|
|
void ( STDMETHODCALLTYPE *Clear )(
|
|
IMFDesiredSample * This);
|
|
|
|
END_INTERFACE
|
|
} IMFDesiredSampleVtbl;
|
|
|
|
interface IMFDesiredSample
|
|
{
|
|
CONST_VTBL struct IMFDesiredSampleVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFDesiredSample_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFDesiredSample_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFDesiredSample_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFDesiredSample_GetDesiredSampleTimeAndDuration(This,phnsSampleTime,phnsSampleDuration) \
|
|
( (This)->lpVtbl -> GetDesiredSampleTimeAndDuration(This,phnsSampleTime,phnsSampleDuration) )
|
|
|
|
#define IMFDesiredSample_SetDesiredSampleTimeAndDuration(This,hnsSampleTime,hnsSampleDuration) \
|
|
( (This)->lpVtbl -> SetDesiredSampleTimeAndDuration(This,hnsSampleTime,hnsSampleDuration) )
|
|
|
|
#define IMFDesiredSample_Clear(This) \
|
|
( (This)->lpVtbl -> Clear(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFDesiredSample_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFTrackedSample_INTERFACE_DEFINED__
|
|
#define __IMFTrackedSample_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFTrackedSample */
|
|
/* [local][helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFTrackedSample;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("245BF8E9-0755-40f7-88A5-AE0F18D55E17")
|
|
IMFTrackedSample : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE SetAllocator(
|
|
/* [annotation][in] */
|
|
__in IMFAsyncCallback *pSampleAllocator,
|
|
/* [unique][in] */ IUnknown *pUnkState) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFTrackedSampleVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFTrackedSample * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFTrackedSample * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFTrackedSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetAllocator )(
|
|
IMFTrackedSample * This,
|
|
/* [annotation][in] */
|
|
__in IMFAsyncCallback *pSampleAllocator,
|
|
/* [unique][in] */ IUnknown *pUnkState);
|
|
|
|
END_INTERFACE
|
|
} IMFTrackedSampleVtbl;
|
|
|
|
interface IMFTrackedSample
|
|
{
|
|
CONST_VTBL struct IMFTrackedSampleVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFTrackedSample_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFTrackedSample_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFTrackedSample_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFTrackedSample_SetAllocator(This,pSampleAllocator,pUnkState) \
|
|
( (This)->lpVtbl -> SetAllocator(This,pSampleAllocator,pUnkState) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFTrackedSample_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFVideoMixerControl_INTERFACE_DEFINED__
|
|
#define __IMFVideoMixerControl_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFVideoMixerControl */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFVideoMixerControl;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("A5C6C53F-C202-4aa5-9695-175BA8C508A5")
|
|
IMFVideoMixerControl : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE SetStreamZOrder(
|
|
/* [in] */ DWORD dwStreamID,
|
|
/* [in] */ DWORD dwZ) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetStreamZOrder(
|
|
/* [in] */ DWORD dwStreamID,
|
|
/* [out] */ __RPC__out DWORD *pdwZ) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetStreamOutputRect(
|
|
/* [in] */ DWORD dwStreamID,
|
|
/* [in] */ __RPC__in const MFVideoNormalizedRect *pnrcOutput) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetStreamOutputRect(
|
|
/* [in] */ DWORD dwStreamID,
|
|
/* [out] */ __RPC__out MFVideoNormalizedRect *pnrcOutput) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFVideoMixerControlVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IMFVideoMixerControl * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IMFVideoMixerControl * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IMFVideoMixerControl * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetStreamZOrder )(
|
|
__RPC__in IMFVideoMixerControl * This,
|
|
/* [in] */ DWORD dwStreamID,
|
|
/* [in] */ DWORD dwZ);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStreamZOrder )(
|
|
__RPC__in IMFVideoMixerControl * This,
|
|
/* [in] */ DWORD dwStreamID,
|
|
/* [out] */ __RPC__out DWORD *pdwZ);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetStreamOutputRect )(
|
|
__RPC__in IMFVideoMixerControl * This,
|
|
/* [in] */ DWORD dwStreamID,
|
|
/* [in] */ __RPC__in const MFVideoNormalizedRect *pnrcOutput);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStreamOutputRect )(
|
|
__RPC__in IMFVideoMixerControl * This,
|
|
/* [in] */ DWORD dwStreamID,
|
|
/* [out] */ __RPC__out MFVideoNormalizedRect *pnrcOutput);
|
|
|
|
END_INTERFACE
|
|
} IMFVideoMixerControlVtbl;
|
|
|
|
interface IMFVideoMixerControl
|
|
{
|
|
CONST_VTBL struct IMFVideoMixerControlVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFVideoMixerControl_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFVideoMixerControl_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFVideoMixerControl_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFVideoMixerControl_SetStreamZOrder(This,dwStreamID,dwZ) \
|
|
( (This)->lpVtbl -> SetStreamZOrder(This,dwStreamID,dwZ) )
|
|
|
|
#define IMFVideoMixerControl_GetStreamZOrder(This,dwStreamID,pdwZ) \
|
|
( (This)->lpVtbl -> GetStreamZOrder(This,dwStreamID,pdwZ) )
|
|
|
|
#define IMFVideoMixerControl_SetStreamOutputRect(This,dwStreamID,pnrcOutput) \
|
|
( (This)->lpVtbl -> SetStreamOutputRect(This,dwStreamID,pnrcOutput) )
|
|
|
|
#define IMFVideoMixerControl_GetStreamOutputRect(This,dwStreamID,pnrcOutput) \
|
|
( (This)->lpVtbl -> GetStreamOutputRect(This,dwStreamID,pnrcOutput) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFVideoMixerControl_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_evr_0000_0007 */
|
|
/* [local] */
|
|
|
|
typedef
|
|
enum _MFVideoMixPrefs
|
|
{ MFVideoMixPrefs_ForceHalfInterlace = 0x1,
|
|
MFVideoMixPrefs_AllowDropToHalfInterlace = 0x2,
|
|
MFVideoMixPrefs_AllowDropToBob = 0x4,
|
|
MFVideoMixPrefs_ForceBob = 0x8,
|
|
MFVideoMixPrefs_Mask = 0xf
|
|
} MFVideoMixPrefs;
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0007_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0007_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFVideoMixerControl2_INTERFACE_DEFINED__
|
|
#define __IMFVideoMixerControl2_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFVideoMixerControl2 */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFVideoMixerControl2;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("8459616d-966e-4930-b658-54fa7e5a16d3")
|
|
IMFVideoMixerControl2 : public IMFVideoMixerControl
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE SetMixingPrefs(
|
|
/* [in] */ DWORD dwMixFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetMixingPrefs(
|
|
/* [out] */ __RPC__out DWORD *pdwMixFlags) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFVideoMixerControl2Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IMFVideoMixerControl2 * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IMFVideoMixerControl2 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IMFVideoMixerControl2 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetStreamZOrder )(
|
|
__RPC__in IMFVideoMixerControl2 * This,
|
|
/* [in] */ DWORD dwStreamID,
|
|
/* [in] */ DWORD dwZ);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStreamZOrder )(
|
|
__RPC__in IMFVideoMixerControl2 * This,
|
|
/* [in] */ DWORD dwStreamID,
|
|
/* [out] */ __RPC__out DWORD *pdwZ);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetStreamOutputRect )(
|
|
__RPC__in IMFVideoMixerControl2 * This,
|
|
/* [in] */ DWORD dwStreamID,
|
|
/* [in] */ __RPC__in const MFVideoNormalizedRect *pnrcOutput);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStreamOutputRect )(
|
|
__RPC__in IMFVideoMixerControl2 * This,
|
|
/* [in] */ DWORD dwStreamID,
|
|
/* [out] */ __RPC__out MFVideoNormalizedRect *pnrcOutput);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetMixingPrefs )(
|
|
__RPC__in IMFVideoMixerControl2 * This,
|
|
/* [in] */ DWORD dwMixFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetMixingPrefs )(
|
|
__RPC__in IMFVideoMixerControl2 * This,
|
|
/* [out] */ __RPC__out DWORD *pdwMixFlags);
|
|
|
|
END_INTERFACE
|
|
} IMFVideoMixerControl2Vtbl;
|
|
|
|
interface IMFVideoMixerControl2
|
|
{
|
|
CONST_VTBL struct IMFVideoMixerControl2Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFVideoMixerControl2_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFVideoMixerControl2_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFVideoMixerControl2_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFVideoMixerControl2_SetStreamZOrder(This,dwStreamID,dwZ) \
|
|
( (This)->lpVtbl -> SetStreamZOrder(This,dwStreamID,dwZ) )
|
|
|
|
#define IMFVideoMixerControl2_GetStreamZOrder(This,dwStreamID,pdwZ) \
|
|
( (This)->lpVtbl -> GetStreamZOrder(This,dwStreamID,pdwZ) )
|
|
|
|
#define IMFVideoMixerControl2_SetStreamOutputRect(This,dwStreamID,pnrcOutput) \
|
|
( (This)->lpVtbl -> SetStreamOutputRect(This,dwStreamID,pnrcOutput) )
|
|
|
|
#define IMFVideoMixerControl2_GetStreamOutputRect(This,dwStreamID,pnrcOutput) \
|
|
( (This)->lpVtbl -> GetStreamOutputRect(This,dwStreamID,pnrcOutput) )
|
|
|
|
|
|
#define IMFVideoMixerControl2_SetMixingPrefs(This,dwMixFlags) \
|
|
( (This)->lpVtbl -> SetMixingPrefs(This,dwMixFlags) )
|
|
|
|
#define IMFVideoMixerControl2_GetMixingPrefs(This,pdwMixFlags) \
|
|
( (This)->lpVtbl -> GetMixingPrefs(This,pdwMixFlags) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFVideoMixerControl2_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFVideoRenderer_INTERFACE_DEFINED__
|
|
#define __IMFVideoRenderer_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFVideoRenderer */
|
|
/* [local][helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFVideoRenderer;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("DFDFD197-A9CA-43d8-B341-6AF3503792CD")
|
|
IMFVideoRenderer : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE InitializeRenderer(
|
|
/* [annotation][unique][in] */
|
|
__in_opt IMFTransform *pVideoMixer,
|
|
/* [annotation][unique][in] */
|
|
__in_opt IMFVideoPresenter *pVideoPresenter) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFVideoRendererVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFVideoRenderer * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFVideoRenderer * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFVideoRenderer * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *InitializeRenderer )(
|
|
IMFVideoRenderer * This,
|
|
/* [annotation][unique][in] */
|
|
__in_opt IMFTransform *pVideoMixer,
|
|
/* [annotation][unique][in] */
|
|
__in_opt IMFVideoPresenter *pVideoPresenter);
|
|
|
|
END_INTERFACE
|
|
} IMFVideoRendererVtbl;
|
|
|
|
interface IMFVideoRenderer
|
|
{
|
|
CONST_VTBL struct IMFVideoRendererVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFVideoRenderer_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFVideoRenderer_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFVideoRenderer_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFVideoRenderer_InitializeRenderer(This,pVideoMixer,pVideoPresenter) \
|
|
( (This)->lpVtbl -> InitializeRenderer(This,pVideoMixer,pVideoPresenter) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFVideoRenderer_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IEVRFilterConfig_INTERFACE_DEFINED__
|
|
#define __IEVRFilterConfig_INTERFACE_DEFINED__
|
|
|
|
/* interface IEVRFilterConfig */
|
|
/* [local][helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IEVRFilterConfig;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("83E91E85-82C1-4ea7-801D-85DC50B75086")
|
|
IEVRFilterConfig : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE SetNumberOfStreams(
|
|
/* [in] */ DWORD dwMaxStreams) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetNumberOfStreams(
|
|
/* [annotation][out] */
|
|
__out DWORD *pdwMaxStreams) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IEVRFilterConfigVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IEVRFilterConfig * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IEVRFilterConfig * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IEVRFilterConfig * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetNumberOfStreams )(
|
|
IEVRFilterConfig * This,
|
|
/* [in] */ DWORD dwMaxStreams);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetNumberOfStreams )(
|
|
IEVRFilterConfig * This,
|
|
/* [annotation][out] */
|
|
__out DWORD *pdwMaxStreams);
|
|
|
|
END_INTERFACE
|
|
} IEVRFilterConfigVtbl;
|
|
|
|
interface IEVRFilterConfig
|
|
{
|
|
CONST_VTBL struct IEVRFilterConfigVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IEVRFilterConfig_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IEVRFilterConfig_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IEVRFilterConfig_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IEVRFilterConfig_SetNumberOfStreams(This,dwMaxStreams) \
|
|
( (This)->lpVtbl -> SetNumberOfStreams(This,dwMaxStreams) )
|
|
|
|
#define IEVRFilterConfig_GetNumberOfStreams(This,pdwMaxStreams) \
|
|
( (This)->lpVtbl -> GetNumberOfStreams(This,pdwMaxStreams) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IEVRFilterConfig_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_evr_0000_0010 */
|
|
/* [local] */
|
|
|
|
typedef
|
|
enum _EVRFilterConfig_Prefs
|
|
{ EVRFilterConfigPrefs_EnableQoS = 0x1,
|
|
EVRFilterConfigPrefs_Mask = 0x1
|
|
} EVRFilterConfigPrefs;
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0010_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0010_v0_0_s_ifspec;
|
|
|
|
#ifndef __IEVRFilterConfigEx_INTERFACE_DEFINED__
|
|
#define __IEVRFilterConfigEx_INTERFACE_DEFINED__
|
|
|
|
/* interface IEVRFilterConfigEx */
|
|
/* [helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IEVRFilterConfigEx;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("aea36028-796d-454f-beee-b48071e24304")
|
|
IEVRFilterConfigEx : public IEVRFilterConfig
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE SetConfigPrefs(
|
|
/* [in] */ DWORD dwConfigFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetConfigPrefs(
|
|
/* [out] */ __RPC__out DWORD *pdwConfigFlags) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IEVRFilterConfigExVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IEVRFilterConfigEx * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IEVRFilterConfigEx * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IEVRFilterConfigEx * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetNumberOfStreams )(
|
|
__RPC__in IEVRFilterConfigEx * This,
|
|
/* [in] */ DWORD dwMaxStreams);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetNumberOfStreams )(
|
|
__RPC__in IEVRFilterConfigEx * This,
|
|
/* [annotation][out] */
|
|
__out DWORD *pdwMaxStreams);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetConfigPrefs )(
|
|
__RPC__in IEVRFilterConfigEx * This,
|
|
/* [in] */ DWORD dwConfigFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetConfigPrefs )(
|
|
__RPC__in IEVRFilterConfigEx * This,
|
|
/* [out] */ __RPC__out DWORD *pdwConfigFlags);
|
|
|
|
END_INTERFACE
|
|
} IEVRFilterConfigExVtbl;
|
|
|
|
interface IEVRFilterConfigEx
|
|
{
|
|
CONST_VTBL struct IEVRFilterConfigExVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IEVRFilterConfigEx_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IEVRFilterConfigEx_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IEVRFilterConfigEx_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IEVRFilterConfigEx_SetNumberOfStreams(This,dwMaxStreams) \
|
|
( (This)->lpVtbl -> SetNumberOfStreams(This,dwMaxStreams) )
|
|
|
|
#define IEVRFilterConfigEx_GetNumberOfStreams(This,pdwMaxStreams) \
|
|
( (This)->lpVtbl -> GetNumberOfStreams(This,pdwMaxStreams) )
|
|
|
|
|
|
#define IEVRFilterConfigEx_SetConfigPrefs(This,dwConfigFlags) \
|
|
( (This)->lpVtbl -> SetConfigPrefs(This,dwConfigFlags) )
|
|
|
|
#define IEVRFilterConfigEx_GetConfigPrefs(This,pdwConfigFlags) \
|
|
( (This)->lpVtbl -> GetConfigPrefs(This,pdwConfigFlags) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IEVRFilterConfigEx_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_evr_0000_0011 */
|
|
/* [local] */
|
|
|
|
typedef
|
|
enum _MF_SERVICE_LOOKUP_TYPE
|
|
{ MF_SERVICE_LOOKUP_UPSTREAM = 0,
|
|
MF_SERVICE_LOOKUP_UPSTREAM_DIRECT = ( MF_SERVICE_LOOKUP_UPSTREAM + 1 ) ,
|
|
MF_SERVICE_LOOKUP_DOWNSTREAM = ( MF_SERVICE_LOOKUP_UPSTREAM_DIRECT + 1 ) ,
|
|
MF_SERVICE_LOOKUP_DOWNSTREAM_DIRECT = ( MF_SERVICE_LOOKUP_DOWNSTREAM + 1 ) ,
|
|
MF_SERVICE_LOOKUP_ALL = ( MF_SERVICE_LOOKUP_DOWNSTREAM_DIRECT + 1 ) ,
|
|
MF_SERVICE_LOOKUP_GLOBAL = ( MF_SERVICE_LOOKUP_ALL + 1 )
|
|
} MF_SERVICE_LOOKUP_TYPE;
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0011_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0011_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFTopologyServiceLookup_INTERFACE_DEFINED__
|
|
#define __IMFTopologyServiceLookup_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFTopologyServiceLookup */
|
|
/* [local][helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFTopologyServiceLookup;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("fa993889-4383-415a-a930-dd472a8cf6f7")
|
|
IMFTopologyServiceLookup : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE LookupService(
|
|
/* [in] */ MF_SERVICE_LOOKUP_TYPE Type,
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [in] */ REFGUID guidService,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__out_ecount_full(*pnObjects) LPVOID *ppvObjects,
|
|
/* [annotation][out][in] */
|
|
__inout DWORD *pnObjects) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFTopologyServiceLookupVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFTopologyServiceLookup * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFTopologyServiceLookup * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFTopologyServiceLookup * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *LookupService )(
|
|
IMFTopologyServiceLookup * This,
|
|
/* [in] */ MF_SERVICE_LOOKUP_TYPE Type,
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [in] */ REFGUID guidService,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__out_ecount_full(*pnObjects) LPVOID *ppvObjects,
|
|
/* [annotation][out][in] */
|
|
__inout DWORD *pnObjects);
|
|
|
|
END_INTERFACE
|
|
} IMFTopologyServiceLookupVtbl;
|
|
|
|
interface IMFTopologyServiceLookup
|
|
{
|
|
CONST_VTBL struct IMFTopologyServiceLookupVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFTopologyServiceLookup_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFTopologyServiceLookup_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFTopologyServiceLookup_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFTopologyServiceLookup_LookupService(This,Type,dwIndex,guidService,riid,ppvObjects,pnObjects) \
|
|
( (This)->lpVtbl -> LookupService(This,Type,dwIndex,guidService,riid,ppvObjects,pnObjects) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFTopologyServiceLookup_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFTopologyServiceLookupClient_INTERFACE_DEFINED__
|
|
#define __IMFTopologyServiceLookupClient_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFTopologyServiceLookupClient */
|
|
/* [uuid][object][local] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFTopologyServiceLookupClient;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("fa99388a-4383-415a-a930-dd472a8cf6f7")
|
|
IMFTopologyServiceLookupClient : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE InitServicePointers(
|
|
/* [annotation][in] */
|
|
__in IMFTopologyServiceLookup *pLookup) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ReleaseServicePointers( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFTopologyServiceLookupClientVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFTopologyServiceLookupClient * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFTopologyServiceLookupClient * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFTopologyServiceLookupClient * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *InitServicePointers )(
|
|
IMFTopologyServiceLookupClient * This,
|
|
/* [annotation][in] */
|
|
__in IMFTopologyServiceLookup *pLookup);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ReleaseServicePointers )(
|
|
IMFTopologyServiceLookupClient * This);
|
|
|
|
END_INTERFACE
|
|
} IMFTopologyServiceLookupClientVtbl;
|
|
|
|
interface IMFTopologyServiceLookupClient
|
|
{
|
|
CONST_VTBL struct IMFTopologyServiceLookupClientVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFTopologyServiceLookupClient_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFTopologyServiceLookupClient_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFTopologyServiceLookupClient_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFTopologyServiceLookupClient_InitServicePointers(This,pLookup) \
|
|
( (This)->lpVtbl -> InitServicePointers(This,pLookup) )
|
|
|
|
#define IMFTopologyServiceLookupClient_ReleaseServicePointers(This) \
|
|
( (This)->lpVtbl -> ReleaseServicePointers(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFTopologyServiceLookupClient_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IEVRTrustedVideoPlugin_INTERFACE_DEFINED__
|
|
#define __IEVRTrustedVideoPlugin_INTERFACE_DEFINED__
|
|
|
|
/* interface IEVRTrustedVideoPlugin */
|
|
/* [local][helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IEVRTrustedVideoPlugin;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("83A4CE40-7710-494b-A893-A472049AF630")
|
|
IEVRTrustedVideoPlugin : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE IsInTrustedVideoMode(
|
|
/* [out] */ BOOL *pYes) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CanConstrict(
|
|
/* [out] */ BOOL *pYes) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetConstriction(
|
|
DWORD dwKPix) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisableImageExport(
|
|
BOOL bDisable) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IEVRTrustedVideoPluginVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IEVRTrustedVideoPlugin * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IEVRTrustedVideoPlugin * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IEVRTrustedVideoPlugin * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsInTrustedVideoMode )(
|
|
IEVRTrustedVideoPlugin * This,
|
|
/* [out] */ BOOL *pYes);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CanConstrict )(
|
|
IEVRTrustedVideoPlugin * This,
|
|
/* [out] */ BOOL *pYes);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetConstriction )(
|
|
IEVRTrustedVideoPlugin * This,
|
|
DWORD dwKPix);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisableImageExport )(
|
|
IEVRTrustedVideoPlugin * This,
|
|
BOOL bDisable);
|
|
|
|
END_INTERFACE
|
|
} IEVRTrustedVideoPluginVtbl;
|
|
|
|
interface IEVRTrustedVideoPlugin
|
|
{
|
|
CONST_VTBL struct IEVRTrustedVideoPluginVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IEVRTrustedVideoPlugin_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IEVRTrustedVideoPlugin_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IEVRTrustedVideoPlugin_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IEVRTrustedVideoPlugin_IsInTrustedVideoMode(This,pYes) \
|
|
( (This)->lpVtbl -> IsInTrustedVideoMode(This,pYes) )
|
|
|
|
#define IEVRTrustedVideoPlugin_CanConstrict(This,pYes) \
|
|
( (This)->lpVtbl -> CanConstrict(This,pYes) )
|
|
|
|
#define IEVRTrustedVideoPlugin_SetConstriction(This,dwKPix) \
|
|
( (This)->lpVtbl -> SetConstriction(This,dwKPix) )
|
|
|
|
#define IEVRTrustedVideoPlugin_DisableImageExport(This,bDisable) \
|
|
( (This)->lpVtbl -> DisableImageExport(This,bDisable) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IEVRTrustedVideoPlugin_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_evr_0000_0014 */
|
|
/* [local] */
|
|
|
|
#if MFEVRDLL
|
|
#define EVRPUBLIC(func) STDAPI _##func
|
|
#else
|
|
#define EVRPUBLIC(func) STDAPI func
|
|
#endif
|
|
EVRPUBLIC(MFCreateVideoPresenter)(
|
|
__in_opt IUnknown * pOwner,
|
|
REFIID riidDevice,
|
|
REFIID riid,
|
|
__deref_out_opt void ** ppVideoPresenter
|
|
);
|
|
EVRPUBLIC(MFCreateVideoMixer)(
|
|
__in_opt IUnknown * pOwner,
|
|
REFIID riidDevice,
|
|
REFIID riid,
|
|
__deref_out_opt void ** ppVideoMixer
|
|
);
|
|
EVRPUBLIC(MFCreateVideoMixerAndPresenter)(
|
|
__in_opt IUnknown * pMixerOwner,
|
|
__in_opt IUnknown * pPresenterOwner,
|
|
REFIID riidMixer,
|
|
__deref_out void ** ppvVideoMixer,
|
|
REFIID riidPresenter,
|
|
__deref_out void ** ppvVideoPresenter
|
|
);
|
|
EVRPUBLIC(MFCreateVideoRenderer)(
|
|
REFIID riidRenderer,
|
|
__deref_out_opt void ** ppVideoRenderer
|
|
);
|
|
EVRPUBLIC(MFCreateVideoSampleFromSurface)(
|
|
__in_opt IUnknown* pUnkSurface,
|
|
__deref_out_opt IMFSample** ppSample
|
|
);
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0014_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_evr_0000_0014_v0_0_s_ifspec;
|
|
|
|
/* Additional Prototypes for ALL interfaces */
|
|
|
|
unsigned long __RPC_USER HWND_UserSize( __RPC__in unsigned long *, unsigned long , __RPC__in HWND * );
|
|
unsigned char * __RPC_USER HWND_UserMarshal( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in HWND * );
|
|
unsigned char * __RPC_USER HWND_UserUnmarshal(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out HWND * );
|
|
void __RPC_USER HWND_UserFree( __RPC__in unsigned long *, __RPC__in HWND * );
|
|
|
|
unsigned long __RPC_USER HWND_UserSize64( __RPC__in unsigned long *, unsigned long , __RPC__in HWND * );
|
|
unsigned char * __RPC_USER HWND_UserMarshal64( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in HWND * );
|
|
unsigned char * __RPC_USER HWND_UserUnmarshal64(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out HWND * );
|
|
void __RPC_USER HWND_UserFree64( __RPC__in unsigned long *, __RPC__in HWND * );
|
|
|
|
/* end of Additional Prototypes */
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|