ReactOS 0.4.15-dev-7942-gd23573b
vmrender.idl File Reference

Go to the source code of this file.

Classes

struct  DDCOLORKEY
 
struct  tagVMRPRESENTATIONINFO
 
struct  tagVMRALLOCATIONINFO
 
struct  _NORMALIZEDRECT
 
struct  tagVMRGUID
 
struct  tagVMRMONITORINFO
 
struct  _VMRFrequency
 
struct  _VMRVideoDesc
 
struct  _VMRDeinterlaceCaps
 
struct  _VMRALPHABITMAP
 
struct  _VMRVIDEOSTREAMINFO
 
interface  IVMRImagePresenter
 
interface  IVMRSurfaceAllocator
 
interface  IVMRSurfaceAllocatorNotify
 
interface  IVMRWindowlessControl
 
interface  IVMRMixerControl
 
interface  IVMRMonitorConfig
 
interface  IVMRFilterConfig
 
interface  IVMRAspectRatioControl
 
interface  IVMRDeinterlaceControl
 
interface  IVMRMixerBitmap
 
interface  IVMRImageCompositor
 
interface  IVMRVideoStreamControl
 
interface  IVMRSurface
 
interface  IVMRImagePresenterConfig
 
interface  IVMRImagePresenterExclModeConfig
 
interface  IVPManager
 

Macros

#define VMRDEVICENAMELEN   32
 
#define VMRDEVICEDESCRIPTIONLEN   256
 

Typedefs

typedef DWORDLPDIRECTDRAW7
 
typedef DWORDLPDIRECTDRAWSURFACE7
 
typedef DWORDLPDDPIXELFORMAT
 
typedef DWORDLPBITMAPINFOHEADER
 
typedef DDCOLORKEYLPDDCOLORKEY
 
typedef struct tagVMRPRESENTATIONINFO VMRPRESENTATIONINFO
 
typedef struct tagVMRALLOCATIONINFO VMRALLOCATIONINFO
 
typedef struct _NORMALIZEDRECT NORMALIZEDRECT
 
typedef struct _NORMALIZEDRECTPNORMALIZEDRECT
 
typedef struct tagVMRGUID VMRGUID
 
typedef struct tagVMRMONITORINFO VMRMONITORINFO
 
typedef struct _VMRFrequency VMRFrequency
 
typedef struct _VMRVideoDesc VMRVideoDesc
 
typedef struct _VMRDeinterlaceCaps VMRDeinterlaceCaps
 
typedef struct _VMRALPHABITMAP VMRALPHABITMAP
 
typedef struct _VMRALPHABITMAPPVMRALPHABITMAP
 
typedef struct _VMRVIDEOSTREAMINFO VMRVIDEOSTREAMINFO
 

Enumerations

enum  VMRPresentationFlags {
  VMRSample_SyncPoint = 0x00000001 , VMRSample_Preroll = 0x00000002 , VMRSample_Discontinuity = 0x00000004 , VMRSample_TimeValid = 0x00000008 ,
  VMRSample_SrcDstRectsValid = 0x00000010
}
 
enum  VMRSurfaceAllocationFlags {
  AMAP_PIXELFORMAT_VALID = 0x01 , AMAP_3D_TARGET = 0x02 , AMAP_ALLOW_SYSMEM = 0x04 , AMAP_FORCE_SYSMEM = 0x08 ,
  AMAP_DIRECTED_FLIP = 0x10 , AMAP_DXVA_TARGET = 0x20
}
 
enum  VMR_ASPECT_RATIO_MODE { VMR_ARMODE_NONE , VMR_ARMODE_LETTER_BOX }
 
enum  VMRMixerPrefs {
  MixerPref_NoDecimation = 0x00000001 , MixerPref_DecimateOutput = 0x00000002 , MixerPref_ARAdjustXorY = 0x00000004 , MixerPref_DecimationReserved = 0x00000008 ,
  MixerPref_DecimateMask = 0x0000000F , MixerPref_BiLinearFiltering = 0x00000010 , MixerPref_PointFiltering = 0x00000020 , MixerPref_FilteringMask = 0x000000F0 ,
  MixerPref_RenderTargetRGB = 0x00000100 , MixerPref_RenderTargetYUV = 0x00001000 , MixerPref_RenderTargetYUV420 = 0x00000200 , MixerPref_RenderTargetYUV422 = 0x00000400 ,
  MixerPref_RenderTargetYUV444 = 0x00000800 , MixerPref_RenderTargetReserved = 0x0000E000 , MixerPref_RenderTargetMask = 0x0000FF00 , MixerPref_DynamicSwitchToBOB = 0x00010000 ,
  MixerPref_DynamicDecimateBy2 = 0x00020000 , MixerPref_DynamicReserved = 0x000C0000 , MixerPref_DynamicMask = 0x000F0000
}
 
enum  VMRRenderPrefs {
  RenderPrefs_RestrictToInitialMonitor = 0x00000000 , RenderPrefs_ForceOffscreen = 0x00000001 , RenderPrefs_ForceOverlays = 0x00000002 , RenderPrefs_AllowOverlays = 0x00000000 ,
  RenderPrefs_AllowOffscreen = 0x00000000 , RenderPrefs_DoNotRenderColorKeyAndBorder = 0x00000008 , RenderPrefs_Reserved = 0x00000010 , RenderPrefs_PreferAGPMemWhenMixing = 0x00000020 ,
  RenderPrefs_Mask = 0x0000003f
}
 
enum  VMRMode { VMRMode_Windowed = 0x00000001 , VMRMode_Windowless = 0x00000002 , VMRMode_Renderless = 0x00000004 , VMRMode_Mask = 0x00000007 }
 
enum  { MAX_NUMBER_OF_STREAMS = 16 }
 
enum  VMRDeinterlacePrefs { DeinterlacePref_NextBest = 0x01 , DeinterlacePref_BOB = 0x02 , DeinterlacePref_Weave = 0x04 , DeinterlacePref_Mask = 0x07 }
 
enum  VMRDeinterlaceTech {
  DeinterlaceTech_Unknown = 0x0000 , DeinterlaceTech_BOBLineReplicate = 0x0001 , DeinterlaceTech_BOBVerticalStretch = 0x0002 , DeinterlaceTech_MedianFiltering = 0x0004 ,
  DeinterlaceTech_EdgeFiltering = 0x0010 , DeinterlaceTech_FieldAdaptive = 0x0020 , DeinterlaceTech_PixelAdaptive = 0x0040 , DeinterlaceTech_MotionVectorSteered = 0x0080
}
 

Macro Definition Documentation

◆ VMRDEVICEDESCRIPTIONLEN

#define VMRDEVICEDESCRIPTIONLEN   256

Definition at line 38 of file vmrender.idl.

◆ VMRDEVICENAMELEN

#define VMRDEVICENAMELEN   32

Definition at line 37 of file vmrender.idl.

Typedef Documentation

◆ LPBITMAPINFOHEADER

Definition at line 9 of file vmrender.idl.

◆ LPDDCOLORKEY

Definition at line 11 of file vmrender.idl.

◆ LPDDPIXELFORMAT

Definition at line 8 of file vmrender.idl.

◆ LPDIRECTDRAW7

typedef DWORD* LPDIRECTDRAW7

Definition at line 6 of file vmrender.idl.

◆ LPDIRECTDRAWSURFACE7

Definition at line 7 of file vmrender.idl.

◆ NORMALIZEDRECT

◆ PNORMALIZEDRECT

◆ PVMRALPHABITMAP

◆ VMRALLOCATIONINFO

◆ VMRALPHABITMAP

◆ VMRDeinterlaceCaps

◆ VMRFrequency

◆ VMRGUID

◆ VMRMONITORINFO

◆ VMRPRESENTATIONINFO

◆ VMRVideoDesc

◆ VMRVIDEOSTREAMINFO

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
MAX_NUMBER_OF_STREAMS 

Definition at line 111 of file vmrender.idl.

112{
114};
@ MAX_NUMBER_OF_STREAMS
Definition: vmrender.idl:113

◆ VMR_ASPECT_RATIO_MODE

Enumerator
VMR_ARMODE_NONE 
VMR_ARMODE_LETTER_BOX 

Definition at line 59 of file vmrender.idl.

60{
VMR_ASPECT_RATIO_MODE
Definition: vmrender.idl:60
@ VMR_ARMODE_NONE
Definition: vmrender.idl:61
@ VMR_ARMODE_LETTER_BOX
Definition: vmrender.idl:62

◆ VMRDeinterlacePrefs

Enumerator
DeinterlacePref_NextBest 
DeinterlacePref_BOB 
DeinterlacePref_Weave 
DeinterlacePref_Mask 

Definition at line 116 of file vmrender.idl.

117{
119 DeinterlacePref_BOB = 0x02,
VMRDeinterlacePrefs
Definition: vmrender.idl:117
@ DeinterlacePref_Weave
Definition: vmrender.idl:120
@ DeinterlacePref_Mask
Definition: vmrender.idl:121
@ DeinterlacePref_BOB
Definition: vmrender.idl:119
@ DeinterlacePref_NextBest
Definition: vmrender.idl:118

◆ VMRDeinterlaceTech

Enumerator
DeinterlaceTech_Unknown 
DeinterlaceTech_BOBLineReplicate 
DeinterlaceTech_BOBVerticalStretch 
DeinterlaceTech_MedianFiltering 
DeinterlaceTech_EdgeFiltering 
DeinterlaceTech_FieldAdaptive 
DeinterlaceTech_PixelAdaptive 
DeinterlaceTech_MotionVectorSteered 

Definition at line 124 of file vmrender.idl.

125{
VMRDeinterlaceTech
Definition: vmrender.idl:125
@ DeinterlaceTech_EdgeFiltering
Definition: vmrender.idl:130
@ DeinterlaceTech_PixelAdaptive
Definition: vmrender.idl:132
@ DeinterlaceTech_BOBVerticalStretch
Definition: vmrender.idl:128
@ DeinterlaceTech_BOBLineReplicate
Definition: vmrender.idl:127
@ DeinterlaceTech_Unknown
Definition: vmrender.idl:126
@ DeinterlaceTech_FieldAdaptive
Definition: vmrender.idl:131
@ DeinterlaceTech_MedianFiltering
Definition: vmrender.idl:129
@ DeinterlaceTech_MotionVectorSteered
Definition: vmrender.idl:133

◆ VMRMixerPrefs

Enumerator
MixerPref_NoDecimation 
MixerPref_DecimateOutput 
MixerPref_ARAdjustXorY 
MixerPref_DecimationReserved 
MixerPref_DecimateMask 
MixerPref_BiLinearFiltering 
MixerPref_PointFiltering 
MixerPref_FilteringMask 
MixerPref_RenderTargetRGB 
MixerPref_RenderTargetYUV 
MixerPref_RenderTargetYUV420 
MixerPref_RenderTargetYUV422 
MixerPref_RenderTargetYUV444 
MixerPref_RenderTargetReserved 
MixerPref_RenderTargetMask 
MixerPref_DynamicSwitchToBOB 
MixerPref_DynamicDecimateBy2 
MixerPref_DynamicReserved 
MixerPref_DynamicMask 

Definition at line 66 of file vmrender.idl.

67{
68 MixerPref_NoDecimation = 0x00000001,
69 MixerPref_DecimateOutput = 0x00000002,
70 MixerPref_ARAdjustXorY = 0x00000004,
72 MixerPref_DecimateMask = 0x0000000F,
73 MixerPref_BiLinearFiltering = 0x00000010,
74 MixerPref_PointFiltering = 0x00000020,
75 MixerPref_FilteringMask = 0x000000F0,
76 MixerPref_RenderTargetRGB = 0x00000100,
77 MixerPref_RenderTargetYUV = 0x00001000,
82 MixerPref_RenderTargetMask = 0x0000FF00,
85 MixerPref_DynamicReserved = 0x000C0000,
86 MixerPref_DynamicMask = 0x000F0000
VMRMixerPrefs
Definition: vmrender.idl:67
@ MixerPref_NoDecimation
Definition: vmrender.idl:68
@ MixerPref_DynamicDecimateBy2
Definition: vmrender.idl:84
@ MixerPref_DynamicMask
Definition: vmrender.idl:86
@ MixerPref_DecimateOutput
Definition: vmrender.idl:69
@ MixerPref_RenderTargetYUV
Definition: vmrender.idl:77
@ MixerPref_DecimateMask
Definition: vmrender.idl:72
@ MixerPref_RenderTargetYUV420
Definition: vmrender.idl:78
@ MixerPref_DynamicSwitchToBOB
Definition: vmrender.idl:83
@ MixerPref_DecimationReserved
Definition: vmrender.idl:71
@ MixerPref_RenderTargetMask
Definition: vmrender.idl:82
@ MixerPref_FilteringMask
Definition: vmrender.idl:75
@ MixerPref_PointFiltering
Definition: vmrender.idl:74
@ MixerPref_RenderTargetYUV444
Definition: vmrender.idl:80
@ MixerPref_ARAdjustXorY
Definition: vmrender.idl:70
@ MixerPref_RenderTargetRGB
Definition: vmrender.idl:76
@ MixerPref_BiLinearFiltering
Definition: vmrender.idl:73
@ MixerPref_RenderTargetYUV422
Definition: vmrender.idl:79
@ MixerPref_DynamicReserved
Definition: vmrender.idl:85
@ MixerPref_RenderTargetReserved
Definition: vmrender.idl:81

◆ VMRMode

Enumerator
VMRMode_Windowed 
VMRMode_Windowless 
VMRMode_Renderless 
VMRMode_Mask 

Definition at line 103 of file vmrender.idl.

104{
105 VMRMode_Windowed = 0x00000001,
106 VMRMode_Windowless = 0x00000002,
107 VMRMode_Renderless = 0x00000004,
108 VMRMode_Mask = 0x00000007,
109} VMRMode;
VMRMode
Definition: vmrender.idl:104
@ VMRMode_Renderless
Definition: vmrender.idl:107
@ VMRMode_Windowless
Definition: vmrender.idl:106
@ VMRMode_Mask
Definition: vmrender.idl:108
@ VMRMode_Windowed
Definition: vmrender.idl:105

◆ VMRPresentationFlags

Enumerator
VMRSample_SyncPoint 
VMRSample_Preroll 
VMRSample_Discontinuity 
VMRSample_TimeValid 
VMRSample_SrcDstRectsValid 

Definition at line 40 of file vmrender.idl.

41{
42 VMRSample_SyncPoint = 0x00000001,
43 VMRSample_Preroll = 0x00000002,
44 VMRSample_Discontinuity = 0x00000004,
45 VMRSample_TimeValid = 0x00000008,
VMRPresentationFlags
Definition: vmrender.idl:41
@ VMRSample_Discontinuity
Definition: vmrender.idl:44
@ VMRSample_Preroll
Definition: vmrender.idl:43
@ VMRSample_TimeValid
Definition: vmrender.idl:45
@ VMRSample_SrcDstRectsValid
Definition: vmrender.idl:46
@ VMRSample_SyncPoint
Definition: vmrender.idl:42

◆ VMRRenderPrefs

Enumerator
RenderPrefs_RestrictToInitialMonitor 
RenderPrefs_ForceOffscreen 
RenderPrefs_ForceOverlays 
RenderPrefs_AllowOverlays 
RenderPrefs_AllowOffscreen 
RenderPrefs_DoNotRenderColorKeyAndBorder 
RenderPrefs_Reserved 
RenderPrefs_PreferAGPMemWhenMixing 
RenderPrefs_Mask 

Definition at line 89 of file vmrender.idl.

90{
92 RenderPrefs_ForceOffscreen = 0x00000001,
93 RenderPrefs_ForceOverlays = 0x00000002,
94 RenderPrefs_AllowOverlays = 0x00000000,
95 RenderPrefs_AllowOffscreen = 0x00000000,
97 RenderPrefs_Reserved = 0x00000010,
99
100 RenderPrefs_Mask = 0x0000003f,
VMRRenderPrefs
Definition: vmrender.idl:90
@ RenderPrefs_RestrictToInitialMonitor
Definition: vmrender.idl:91
@ RenderPrefs_ForceOffscreen
Definition: vmrender.idl:92

◆ VMRSurfaceAllocationFlags

Enumerator
AMAP_PIXELFORMAT_VALID 
AMAP_3D_TARGET 
AMAP_ALLOW_SYSMEM 
AMAP_FORCE_SYSMEM 
AMAP_DIRECTED_FLIP 
AMAP_DXVA_TARGET 

Definition at line 49 of file vmrender.idl.

50{
52 AMAP_3D_TARGET = 0x02,
53 AMAP_ALLOW_SYSMEM = 0x04,
54 AMAP_FORCE_SYSMEM = 0x08,
55 AMAP_DIRECTED_FLIP = 0x10,
56 AMAP_DXVA_TARGET = 0x20
VMRSurfaceAllocationFlags
Definition: vmrender.idl:50
@ AMAP_FORCE_SYSMEM
Definition: vmrender.idl:54
@ AMAP_3D_TARGET
Definition: vmrender.idl:52
@ AMAP_ALLOW_SYSMEM
Definition: vmrender.idl:53
@ AMAP_DIRECTED_FLIP
Definition: vmrender.idl:55
@ AMAP_PIXELFORMAT_VALID
Definition: vmrender.idl:51
@ AMAP_DXVA_TARGET
Definition: vmrender.idl:56