11 #ifndef __DVP_INCLUDED__
12 #define __DVP_INCLUDED__
13 #if defined( _WIN32 ) && !defined( _NO_COM )
14 #define COM_NO_WINDOWS_H
18 #undef CO_E_NOTINITIALIZED
19 #define CO_E_NOTINITIALIZED 0x800401F0L
29 #if defined( _WIN32 ) && !defined( _NO_COM )
30 DEFINE_GUID( IID_IDDVideoPortContainer, 0x6C142760,0xA733,0x11CE,0xA5,0x21,0x00,0x20,0xAF,0x0B,0xE5,0x60 );
31 DEFINE_GUID( IID_IDirectDrawVideoPort, 0xB36D93E0,0x2B43,0x11CF,0xA2,0xDE,0x00,0xAA,0x00,0xB9,0x33,0x56 );
33 DEFINE_GUID( DDVPTYPE_E_HREFH_VREFH, 0x54F39980L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
34 DEFINE_GUID( DDVPTYPE_E_HREFH_VREFL, 0x92783220L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
35 DEFINE_GUID( DDVPTYPE_E_HREFL_VREFH, 0xA07A02E0L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
36 DEFINE_GUID( DDVPTYPE_E_HREFL_VREFL, 0xE09C77E0L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
37 DEFINE_GUID( DDVPTYPE_CCIR656, 0xFCA326A0L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
38 DEFINE_GUID( DDVPTYPE_BROOKTREE, 0x1352A560L,0xDA61,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
39 DEFINE_GUID( DDVPTYPE_PHILIPS, 0x332CF160L,0xDA61,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
56 struct IDirectDrawSurface;
57 struct IDirectDrawPalette;
58 struct IDirectDrawClipper;
89 #if defined( _WIN32 ) && !defined( _NO_COM )
91 #define INTERFACE IDDVideoPortContainer
95 STDMETHOD(QueryInterface) (THIS_ REFIID riid,
LPVOID FAR * ppvObj) PURE;
96 STDMETHOD_(ULONG,AddRef) (THIS) PURE;
97 STDMETHOD_(ULONG,Release) (THIS) PURE;
105 #if !defined(__cplusplus) || defined(CINTERFACE)
106 #define IVideoPortContainer_QueryInterface(p, a, b) (p)->lpVtbl->QueryInterface(p, a, b)
107 #define IVideoPortContainer_AddRef(p) (p)->lpVtbl->AddRef(p)
108 #define IVideoPortContainer_Release(p) (p)->lpVtbl->Release(p)
109 #define IVideoPortContainer_CreateVideoPort(p, a, b, c, d) (p)->lpVtbl->CreateVideoPort(p, a, b, c, d)
110 #define IVideoPortContainer_EnumVideoPorts(p, a, b, c, d) (p)->lpVtbl->EnumVideoPorts(p, a, b, c, d)
111 #define IVideoPortContainer_GetVideoPortConnectInfo(p, a, b, c) (p)->lpVtbl->GetVideoPortConnectInfo(p, a, b, c)
112 #define IVideoPortContainer_QueryVideoPortStatus(p, a, b) (p)->lpVtbl->QueryVideoPortStatus(p, a, b)
114 #define IVideoPortContainer_QueryInterface(p, a, b) (p)->QueryInterface(a, b)
115 #define IVideoPortContainer_AddRef(p) (p)->AddRef()
116 #define IVideoPortContainer_Release(p) (p)->Release()
117 #define IVideoPortContainer_CreateVideoPort(p, a, b, c, d) (p)->CreateVideoPort(a, b, c, d)
118 #define IVideoPortContainer_EnumVideoPorts(p, a, b, c, d) (p)->EnumVideoPorts(a, b, c, d)
119 #define IVideoPortContainer_GetVideoPortConnectInfo(p, a, b, c) (p)->GetVideoPortConnectInfo(a, b, c)
120 #define IVideoPortContainer_QueryVideoPortStatus(p, a, b) (p)->QueryVideoPortStatus(a, b)
129 #if defined( _WIN32 ) && !defined( _NO_COM )
131 #define INTERFACE IDirectDrawVideoPort
135 STDMETHOD(QueryInterface) (THIS_ REFIID riid,
LPVOID FAR * ppvObj) PURE;
136 STDMETHOD_(ULONG,AddRef) (THIS) PURE;
137 STDMETHOD_(ULONG,Release) (THIS) PURE;
144 STDMETHOD(GetFieldPolarity)(THIS_ LPBOOL) PURE;
145 STDMETHOD(GetVideoLine)(THIS_
LPDWORD) PURE;
146 STDMETHOD(GetVideoSignalStatus)(THIS_
LPDWORD) PURE;
150 STDMETHOD(StopVideo)(THIS) PURE;
155 #if !defined(__cplusplus) || defined(CINTERFACE)
156 #define IVideoPort_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
157 #define IVideoPort_AddRef(p) (p)->lpVtbl->AddRef(p)
158 #define IVideoPort_Release(p) (p)->lpVtbl->Release(p)
159 #define IVideoPort_SetTargetSurface(p,a,b) (p)->lpVtbl->SetTargetSurface(p,a,b)
160 #define IVideoPort_Flip(p,a,b) (p)->lpVtbl->Flip(p,a,b)
161 #define IVideoPort_GetBandwidthInfo(p,a,b,c,d,e) (p)->lpVtbl->GetBandwidthInfo(p,a,b,c,d,e)
162 #define IVideoPort_GetColorControls(p,a) (p)->lpVtbl->GetColorControls(p,a)
163 #define IVideoPort_GetInputFormats(p,a,b,c) (p)->lpVtbl->GetInputFormats(p,a,b,c)
164 #define IVideoPort_GetOutputFormats(p,a,b,c,d) (p)->lpVtbl->GetOutputFormats(p,a,b,c,d)
165 #define IVideoPort_GetFieldPolarity(p,a) (p)->lpVtbl->GetFieldPolarity(p,a)
166 #define IVideoPort_GetVideoLine(p,a) (p)->lpVtbl->GetVideoLine(p,a)
167 #define IVideoPort_GetVideoSignalStatus(p,a) (p)->lpVtbl->GetVideoSignalStatus(p,a)
168 #define IVideoPort_SetColorControls(p,a) (p)->lpVtbl->SetColorControls(p,a)
169 #define IVideoPort_StartVideo(p,a) (p)->lpVtbl->StartVideo(p,a)
170 #define IVideoPort_StopVideo(p) (p)->lpVtbl->StopVideo(p)
171 #define IVideoPort_UpdateVideo(p,a) (p)->lpVtbl->UpdateVideo(p,a)
172 #define IVideoPort_WaitForSync(p,a,b,c) (p)->lpVtbl->WaitForSync(p,a,b,c)
174 #define IVideoPort_QueryInterface(p,a,b) (p)->QueryInterface(a,b)
175 #define IVideoPort_AddRef(p) (p)->AddRef()
176 #define IVideoPort_Release(p) (p)->Release()
177 #define IVideoPort_SetTargetSurface(p,a,b) (p)->SetTargetSurface(a,b)
178 #define IVideoPort_Flip(p,a,b) (p)->Flip(a,b)
179 #define IVideoPort_GetBandwidthInfo(p,a,b,c,d,e) (p)->GetBandwidthInfo(a,b,c,d,e)
180 #define IVideoPort_GetColorControls(p,a) (p)->GetColorControls(a)
181 #define IVideoPort_GetInputFormats(p,a,b,c) (p)->GetInputFormats(a,b,c)
182 #define IVideoPort_GetOutputFormats(p,a,b,c,d) (p)->GetOutputFormats(a,b,c,d)
183 #define IVideoPort_GetFieldPolarity(p,a) (p)->GetFieldPolarity(a)
184 #define IVideoPort_GetVideoLine(p,a) (p)->GetVideoLine(a)
185 #define IVideoPort_GetVideoSignalStatus(p,a) (p)->GetVideoSignalStatus(a)
186 #define IVideoPort_SetColorControls(p,a) (p)->SetColorControls(a)
187 #define IVideoPort_StartVideo(p,a) (p)->StartVideo(a)
188 #define IVideoPort_StopVideo(p) (p)->StopVideo()
189 #define IVideoPort_UpdateVideo(p,a) (p)->UpdateVideo(a)
190 #define IVideoPort_WaitForSync(p,a,b,c) (p)->WaitForSync(a,b,c)
237 #define DDVPD_WIDTH 0x00000001l
242 #define DDVPD_HEIGHT 0x00000002l
247 #define DDVPD_ID 0x00000004l
252 #define DDVPD_CAPS 0x00000008l
257 #define DDVPD_FX 0x00000010l
262 #define DDVPD_AUTOFLIP 0x00000020l
267 #define DDVPD_ALIGN 0x00000040l
361 #define DDVPCONNECT_DOUBLECLOCK 0x00000001l
369 #define DDVPCONNECT_VACT 0x00000002l
378 #define DDVPCONNECT_INVERTPOLARITY 0x00000004l
384 #define DDVPCONNECT_DISCARDSVREFDATA 0x00000008l
390 #define DDVPCONNECT_HALFLINE 0x00000010l
396 #define DDVPCONNECT_INTERLACED 0x00000020l
402 #define DDVPCONNECT_SHAREEVEN 0x00000040l
408 #define DDVPCONNECT_SHAREODD 0x00000080l
419 #define DDVPCAPS_AUTOFLIP 0x00000001l
424 #define DDVPCAPS_INTERLACED 0x00000002l
429 #define DDVPCAPS_NONINTERLACED 0x00000004l
435 #define DDVPCAPS_READBACKFIELD 0x00000008l
441 #define DDVPCAPS_READBACKLINE 0x00000010l
449 #define DDVPCAPS_SHAREABLE 0x00000020l
454 #define DDVPCAPS_SKIPEVENFIELDS 0x00000040l
459 #define DDVPCAPS_SKIPODDFIELDS 0x00000080l
465 #define DDVPCAPS_SYNCMASTER 0x00000100l
471 #define DDVPCAPS_VBISURFACE 0x00000200l
477 #define DDVPCAPS_COLORCONTROL 0x00000400l
483 #define DDVPCAPS_OVERSAMPLEDVBI 0x00000800l
488 #define DDVPCAPS_SYSTEMMEMORY 0x00001000l
500 #define DDVPFX_CROPTOPDATA 0x00000001l
506 #define DDVPFX_CROPX 0x00000002l
512 #define DDVPFX_CROPY 0x00000004l
517 #define DDVPFX_INTERLEAVE 0x00000008l
523 #define DDVPFX_MIRRORLEFTRIGHT 0x00000010l
529 #define DDVPFX_MIRRORUPDOWN 0x00000020l
535 #define DDVPFX_PRESHRINKX 0x00000040l
541 #define DDVPFX_PRESHRINKY 0x00000080l
547 #define DDVPFX_PRESHRINKXB 0x00000100l
553 #define DDVPFX_PRESHRINKYB 0x00000200l
560 #define DDVPFX_PRESHRINKXS 0x00000400l
567 #define DDVPFX_PRESHRINKYS 0x00000800l
573 #define DDVPFX_PRESTRETCHX 0x00001000l
579 #define DDVPFX_PRESTRETCHY 0x00002000l
585 #define DDVPFX_PRESTRETCHXN 0x00004000l
591 #define DDVPFX_PRESTRETCHYN 0x00008000l
597 #define DDVPFX_VBICONVERT 0x00010000l
603 #define DDVPFX_VBINOSCALE 0x00020000l
609 #define DDVPFX_IGNOREVBIXCROP 0x00040000l
626 #define DDVP_AUTOFLIP 0x00000001l
631 #define DDVP_CONVERT 0x00000002l
636 #define DDVP_CROP 0x00000004l
641 #define DDVP_INTERLEAVE 0x00000008l
647 #define DDVP_MIRRORLEFTRIGHT 0x00000010l
653 #define DDVP_MIRRORUPDOWN 0x00000020l
658 #define DDVP_PRESCALE 0x00000040l
663 #define DDVP_SKIPEVENFIELDS 0x00000080l
668 #define DDVP_SKIPODDFIELDS 0x00000100l
673 #define DDVP_SYNCMASTER 0x00000200l
679 #define DDVP_VBICONVERT 0x00000400l
685 #define DDVP_VBINOSCALE 0x00000800l
691 #define DDVP_OVERRIDEBOBWEAVE 0x00001000l
697 #define DDVP_IGNOREVBIXCROP 0x00002000l
709 #define DDVPFORMAT_VIDEO 0x00000001l
714 #define DDVPFORMAT_VBI 0x00000002l
727 #define DDVPTARGET_VIDEO 0x00000001l
732 #define DDVPTARGET_VBI 0x00000002l
744 #define DDVPWAIT_BEGIN 0x00000001l
749 #define DDVPWAIT_END 0x00000002l
754 #define DDVPWAIT_LINE 0x00000003l
765 #define DDVPFLIP_VIDEO 0x00000001l
770 #define DDVPFLIP_VBI 0x00000002l
781 #define DDVPSQ_NOSIGNAL 0x00000001l
786 #define DDVPSQ_SIGNALOK 0x00000002l
798 #define DDVPB_VIDEOPORT 0x00000001l
803 #define DDVPB_OVERLAY 0x00000002l
808 #define DDVPB_TYPE 0x00000004l
819 #define DDVPBCAPS_SOURCE 0x00000001l
825 #define DDVPBCAPS_DESTINATION 0x00000002l
struct _DDVIDEOPORTSTATUS FAR * LPDDVIDEOPORTSTATUS
DWORD dwMicrosecondsPerField
DWORD dwAlignVideoPortBoundary
DWORD dwAlignVideoPortCropWidth
struct _DDVIDEOPORTINFO DDVIDEOPORTINFO
DWORD dwMaxPixelsPerSecond
DDPIXELFORMAT FAR * LPDDPIXELFORMAT
struct _DDVIDEOPORTCONNECT FAR * LPDDVIDEOPORTCONNECT
struct _DDVIDEOPORTCONNECT DDVIDEOPORTCONNECT
DECLARE_INTERFACE_(IDPAsyncData, IUnknown)
struct _DDVIDEOPORTBANDWIDTH DDVIDEOPORTBANDWIDTH
struct _DDVIDEOPORTINFO FAR * LPDDVIDEOPORTINFO
LPDDPIXELFORMAT lpddpfInputFormat
DWORD dwAlignVideoPortPrescaleWidth
struct IDirectDrawVideoPortVtbl DIRECTDRAWVIDEOPORTCALLBACKS
DWORD dwNumVBIAutoFlipSurfaces
struct _DDVIDEOPORTCAPS DDVIDEOPORTCAPS
struct IDirectDrawSurface FAR * LPDIRECTDRAWSURFACE
struct IDDVideoPortContainerVtbl DDVIDEOPORTCONTAINERCALLBACKS
struct _DDVIDEOPORTSTATUS DDVIDEOPORTSTATUS
DDVIDEOPORTCONNECT VideoPortType
typedef HRESULT(FAR PASCAL *LPDDENUMVIDEOCALLBACK)(LPDDVIDEOPORTCAPS
struct IDDVideoPortContainer FAR * LPDDVIDEOPORTCONTAINER
DWORD dwNumAutoFlipSurfaces
DWORD dwYInterpAndColorkey
struct _DDVIDEOPORTCAPS FAR * LPDDVIDEOPORTCAPS
DDVIDEOPORTCONNECT VideoPortType
struct _DDCOLORCONTROL FAR * LPDDCOLORCONTROL
DEFINE_GUID(IID_IDPAsyncData, 0x47bcd7e0, 0x2e89, 0x11d0, 0xa8, 0x89, 0x0, 0xa0, 0xc9, 0x5, 0x43, 0x3c)
DWORD dwAlignVideoPortCropBoundary
struct IDirectDrawVideoPort FAR * LPDIRECTDRAWVIDEOPORT
LPDDPIXELFORMAT lpddpfVBIInputFormat
struct _DDVIDEOPORTDESC DDVIDEOPORTDESC
struct _DDVIDEOPORTDESC FAR * LPDDVIDEOPORTDESC
LPDDPIXELFORMAT lpddpfVBIOutputFormat
struct _DDVIDEOPORTBANDWIDTH FAR * LPDDVIDEOPORTBANDWIDTH