ReactOS 0.4.15-dev-8227-g32d615f
vmrender.idl File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

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

Macros

#define VMRDEVICENAMELEN   32
 
#define VMRDEVICEDESCRIPTIONLEN   256
 

Typedefs

typedef DWORD IDirectDrawSurface7
 
typedef DWORD IDirectDraw7
 
typedef DWORDLPBITMAPINFOHEADER
 
typedef DWORDLPDDPIXELFORMAT
 
typedef enum _VMRPresentationFlags VMRPresentationFlags
 
typedef struct tagVMRPRESENTATIONINFO VMRPRESENTATIONINFO
 
typedef enum _VMRSurfaceAllocationFlags VMRSurfaceAllocationFlags
 
typedef struct tagVMRALLOCATIONINFO VMRALLOCATIONINFO
 
typedef enum _VMR_ASPECT_RATIO_MODE VMR_ASPECT_RATIO_MODE
 
typedef enum _VMRMixerPrefs VMRMixerPrefs
 
typedef struct _NORMALIZEDRECT NORMALIZEDRECT
 
typedef struct tagVMRGUID VMRGUID
 
typedef struct tagVMRMONITORINFO VMRMONITORINFO
 
typedef enum RenderPrefs_ForceOffScreen = 0x01
 
typedef enum RenderPrefs_ForceOverlays = 0x02
 
typedef enum RenderPrefs_AllowOverlays = 0x00
 
typedef enum RenderPrefs_AllowOffscreen = 0x00
 
typedef enum RenderPrefs_DoNotRenderColorKeyAndBorder = 0x08
 
typedef enum RenderPrefs_Reserved = 0x10
 
typedef enum RenderPrefs_PreferAGPMemWhenMixing = 0x20
 
typedef enum RenderPrefs_Mask
 
typedef enum _VMRMode VMRMode
 
typedef enum _VMRDeinterlacePrefs VMRDeinterlacePrefs
 
typedef enum _VMRDeinterlaceTech VMRDeinterlaceTech
 
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 = 0x01 , VMRSample_Preroll = 0x02 , VMRSample_Discontinuity = 0x04 , VMRSample_TimeValid = 0x08 ,
  VMRSample_SrcDstRectsValid = 0x10
}
 
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 = 0x0001 , MixerPref_DecimateOutput = 0x0002 , MixerPref_ARAdjustXorY = 0x0004 , MixerPref_DecimationReserved = 0x0008 ,
  MixerPref_DecimateMask = 0x000f , MixerPref_BiLinearFiltering = 0x0010 , MixerPref_PointFiltering = 0x0020 , MixerPref_FinteringMask = 0x00f0 ,
  MixerPref_RenderTargetRGB = 0x0100 , MixerPref_RenderTargetYUV = 0x1000 , MixerPref_RenderTargetYUV420 = 0x0200 , MixerPref_RenderTargetYUV422 = 0x0400 ,
  MixerPref_RenderTargetYUV444 = 0x0800 , MixerPref_RenderTargetReserved = 0xe000 , MixerPref_RenderTargetMask = 0xff00 , MixerPref_DynamicSwitchToBOB = 0x10000 ,
  MixerPref_DynamicDecimateBy2 = 0x20000 , MixerPref_DynamicReserved = 0xc0000 , MixerPref_DynamicMask = 0xf0000
}
 
enum  _VMRMode { VMRMode_Windowed = 0x1 , VMRMode_Windowless = 0x2 , VMRMode_Renderless = 0x4 , VMRMode_Mask = 0x7 }
 
enum  { MAX_NUMBER_OF_STREAMS = 16 }
 
enum  _VMRDeinterlacePrefs { DeinterlacePref_NextBest = 0x1 , DeinterlacePref_BOB = 0x2 , DeinterlacePref_Weave = 0x4 , DeinterlacePref_Mask = 0x7 }
 
enum  _VMRDeinterlaceTech {
  DeinterlaceTech_Unknown = 0x00 , DeinterlaceTech_BOBLineReplicate = 0x01 , DeinterlaceTech_BOBVerticalStretch = 0x02 , DeinterlaceTech_MedianFiltering = 0x04 ,
  DeinterlaceTech_EdgeFiltering = 0x08 , DeinterlaceTech_FieldAdaptive = 0x10 , DeinterlaceTech_PixelAdaptive = 0x20 , DeinterlaceTech_MotionVectorSteered = 0x80
}
 

Macro Definition Documentation

◆ VMRDEVICEDESCRIPTIONLEN

#define VMRDEVICEDESCRIPTIONLEN   256

Definition at line 220 of file vmrender.idl.

◆ VMRDEVICENAMELEN

#define VMRDEVICENAMELEN   32

Definition at line 219 of file vmrender.idl.

Typedef Documentation

◆ IDirectDraw7

Definition at line 21 of file vmrender.idl.

◆ IDirectDrawSurface7

Definition at line 20 of file vmrender.idl.

◆ LPBITMAPINFOHEADER

Definition at line 22 of file vmrender.idl.

◆ LPDDPIXELFORMAT

Definition at line 23 of file vmrender.idl.

◆ NORMALIZEDRECT

◆ PVMRALPHABITMAP

◆ RenderPrefs_AllowOffscreen

◆ RenderPrefs_AllowOverlays

◆ RenderPrefs_DoNotRenderColorKeyAndBorder

◆ RenderPrefs_ForceOffScreen

◆ RenderPrefs_ForceOverlays

◆ RenderPrefs_Mask

Initial value:
= 0x3f
VMRRenderPrefs
Definition: vmrender.idl:90

◆ RenderPrefs_PreferAGPMemWhenMixing

◆ RenderPrefs_Reserved

typedef enum RenderPrefs_Reserved = 0x10

◆ VMR_ASPECT_RATIO_MODE

◆ VMRALLOCATIONINFO

◆ VMRALPHABITMAP

◆ VMRDeinterlaceCaps

◆ VMRDeinterlacePrefs

◆ VMRDeinterlaceTech

◆ VMRFrequency

◆ VMRGUID

◆ VMRMixerPrefs

◆ VMRMode

◆ VMRMONITORINFO

◆ VMRPresentationFlags

◆ VMRPRESENTATIONINFO

◆ VMRSurfaceAllocationFlags

◆ VMRVideoDesc

◆ VMRVIDEOSTREAMINFO

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
MAX_NUMBER_OF_STREAMS 

Definition at line 274 of file vmrender.idl.

274{ MAX_NUMBER_OF_STREAMS = 16 };
@ MAX_NUMBER_OF_STREAMS
Definition: vmrender.idl:113

◆ _VMR_ASPECT_RATIO_MODE

Enumerator
VMR_ARMODE_NONE 
VMR_ARMODE_LETTER_BOX 

Definition at line 131 of file vmrender.idl.

132{
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 307 of file vmrender.idl.

308{
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 315 of file vmrender.idl.

316{
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_FinteringMask 
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 163 of file vmrender.idl.

164{
165 MixerPref_NoDecimation = 0x0001,
167 MixerPref_ARAdjustXorY = 0x0004,
169 MixerPref_DecimateMask = 0x000f,
170
174
182
186 MixerPref_DynamicMask = 0xf0000
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_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
@ MixerPref_FinteringMask
Definition: vmrender.idl:173

◆ _VMRMode

Enumerator
VMRMode_Windowed 
VMRMode_Windowless 
VMRMode_Renderless 
VMRMode_Mask 

Definition at line 266 of file vmrender.idl.

267{
268 VMRMode_Windowed = 0x1,
269 VMRMode_Windowless = 0x2,
270 VMRMode_Renderless = 0x4,
271 VMRMode_Mask = 0x7
272} 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 43 of file vmrender.idl.

44{
46 VMRSample_Preroll = 0x02,
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

◆ _VMRSurfaceAllocationFlags

Enumerator
AMAP_PIXELFORMAT_VALID 
AMAP_3D_TARGET 
AMAP_ALLOW_SYSMEM 
AMAP_FORCE_SYSMEM 
AMAP_DIRECTED_FLIP 
AMAP_DXVA_TARGET 

Definition at line 77 of file vmrender.idl.

78{
80 AMAP_3D_TARGET = 0x02,
81 AMAP_ALLOW_SYSMEM = 0x04,
82 AMAP_FORCE_SYSMEM = 0x08,
83 AMAP_DIRECTED_FLIP = 0x10,
84 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