DirectX 5 Redocumentation
A redocumentation of DirectX 5, brought to you by a bunch of Infomaniacs.
dvp.h File Reference

Go to the source code of this file.

Data Structures

struct  _DDVIDEOPORTCONNECT
 
struct  _DDVIDEOPORTCAPS
 
struct  _DDVIDEOPORTDESC
 
struct  _DDVIDEOPORTINFO
 
struct  _DDVIDEOPORTBANDWIDTH
 
struct  _DDVIDEOPORTSTATUS
 

Macros

#define IUnknown   void
 
#define CO_E_NOTINITIALIZED   0x800401F0L
 
#define INTERFACE   IDDVideoPortContainer
 
#define IVideoPortContainer_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p, a, b)
 
#define IVideoPortContainer_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IVideoPortContainer_Release(p)   (p)->lpVtbl->Release(p)
 
#define IVideoPortContainer_CreateVideoPort(p, a, b, c, d)   (p)->lpVtbl->CreateVideoPort(p, a, b, c, d)
 
#define IVideoPortContainer_EnumVideoPorts(p, a, b, c, d)   (p)->lpVtbl->EnumVideoPorts(p, a, b, c, d)
 
#define IVideoPortContainer_GetVideoPortConnectInfo(p, a, b, c)   (p)->lpVtbl->GetVideoPortConnectInfo(p, a, b, c)
 
#define IVideoPortContainer_QueryVideoPortStatus(p, a, b)   (p)->lpVtbl->QueryVideoPortStatus(p, a, b)
 
#define INTERFACE   IDirectDrawVideoPort
 
#define IVideoPort_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IVideoPort_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IVideoPort_Release(p)   (p)->lpVtbl->Release(p)
 
#define IVideoPort_SetTargetSurface(p, a, b)   (p)->lpVtbl->SetTargetSurface(p,a,b)
 
#define IVideoPort_Flip(p, a, b)   (p)->lpVtbl->Flip(p,a,b)
 
#define IVideoPort_GetBandwidthInfo(p, a, b, c, d, e)   (p)->lpVtbl->GetBandwidthInfo(p,a,b,c,d,e)
 
#define IVideoPort_GetColorControls(p, a)   (p)->lpVtbl->GetColorControls(p,a)
 
#define IVideoPort_GetInputFormats(p, a, b, c)   (p)->lpVtbl->GetInputFormats(p,a,b,c)
 
#define IVideoPort_GetOutputFormats(p, a, b, c, d)   (p)->lpVtbl->GetOutputFormats(p,a,b,c,d)
 
#define IVideoPort_GetFieldPolarity(p, a)   (p)->lpVtbl->GetFieldPolarity(p,a)
 
#define IVideoPort_GetVideoLine(p, a)   (p)->lpVtbl->GetVideoLine(p,a)
 
#define IVideoPort_GetVideoSignalStatus(p, a)   (p)->lpVtbl->GetVideoSignalStatus(p,a)
 
#define IVideoPort_SetColorControls(p, a)   (p)->lpVtbl->SetColorControls(p,a)
 
#define IVideoPort_StartVideo(p, a)   (p)->lpVtbl->StartVideo(p,a)
 
#define IVideoPort_StopVideo(p)   (p)->lpVtbl->StopVideo(p)
 
#define IVideoPort_UpdateVideo(p, a)   (p)->lpVtbl->UpdateVideo(p,a)
 
#define IVideoPort_WaitForSync(p, a, b, c)   (p)->lpVtbl->WaitForSync(p,a,b,c)
 
#define DDVPD_WIDTH   0x00000001l
 
#define DDVPD_HEIGHT   0x00000002l
 
#define DDVPD_ID   0x00000004l
 
#define DDVPD_CAPS   0x00000008l
 
#define DDVPD_FX   0x00000010l
 
#define DDVPD_AUTOFLIP   0x00000020l
 
#define DDVPD_ALIGN   0x00000040l
 
#define DDVPCONNECT_DOUBLECLOCK   0x00000001l
 
#define DDVPCONNECT_VACT   0x00000002l
 
#define DDVPCONNECT_INVERTPOLARITY   0x00000004l
 
#define DDVPCONNECT_DISCARDSVREFDATA   0x00000008l
 
#define DDVPCONNECT_HALFLINE   0x00000010l
 
#define DDVPCONNECT_INTERLACED   0x00000020l
 
#define DDVPCONNECT_SHAREEVEN   0x00000040l
 
#define DDVPCONNECT_SHAREODD   0x00000080l
 
#define DDVPCAPS_AUTOFLIP   0x00000001l
 
#define DDVPCAPS_INTERLACED   0x00000002l
 
#define DDVPCAPS_NONINTERLACED   0x00000004l
 
#define DDVPCAPS_READBACKFIELD   0x00000008l
 
#define DDVPCAPS_READBACKLINE   0x00000010l
 
#define DDVPCAPS_SHAREABLE   0x00000020l
 
#define DDVPCAPS_SKIPEVENFIELDS   0x00000040l
 
#define DDVPCAPS_SKIPODDFIELDS   0x00000080l
 
#define DDVPCAPS_SYNCMASTER   0x00000100l
 
#define DDVPCAPS_VBISURFACE   0x00000200l
 
#define DDVPCAPS_COLORCONTROL   0x00000400l
 
#define DDVPCAPS_OVERSAMPLEDVBI   0x00000800l
 
#define DDVPCAPS_SYSTEMMEMORY   0x00001000l
 
#define DDVPFX_CROPTOPDATA   0x00000001l
 
#define DDVPFX_CROPX   0x00000002l
 
#define DDVPFX_CROPY   0x00000004l
 
#define DDVPFX_INTERLEAVE   0x00000008l
 
#define DDVPFX_MIRRORLEFTRIGHT   0x00000010l
 
#define DDVPFX_MIRRORUPDOWN   0x00000020l
 
#define DDVPFX_PRESHRINKX   0x00000040l
 
#define DDVPFX_PRESHRINKY   0x00000080l
 
#define DDVPFX_PRESHRINKXB   0x00000100l
 
#define DDVPFX_PRESHRINKYB   0x00000200l
 
#define DDVPFX_PRESHRINKXS   0x00000400l
 
#define DDVPFX_PRESHRINKYS   0x00000800l
 
#define DDVPFX_PRESTRETCHX   0x00001000l
 
#define DDVPFX_PRESTRETCHY   0x00002000l
 
#define DDVPFX_PRESTRETCHXN   0x00004000l
 
#define DDVPFX_PRESTRETCHYN   0x00008000l
 
#define DDVPFX_VBICONVERT   0x00010000l
 
#define DDVPFX_VBINOSCALE   0x00020000l
 
#define DDVPFX_IGNOREVBIXCROP   0x00040000l
 
#define DDVP_AUTOFLIP   0x00000001l
 
#define DDVP_CONVERT   0x00000002l
 
#define DDVP_CROP   0x00000004l
 
#define DDVP_INTERLEAVE   0x00000008l
 
#define DDVP_MIRRORLEFTRIGHT   0x00000010l
 
#define DDVP_MIRRORUPDOWN   0x00000020l
 
#define DDVP_PRESCALE   0x00000040l
 
#define DDVP_SKIPEVENFIELDS   0x00000080l
 
#define DDVP_SKIPODDFIELDS   0x00000100l
 
#define DDVP_SYNCMASTER   0x00000200l
 
#define DDVP_VBICONVERT   0x00000400l
 
#define DDVP_VBINOSCALE   0x00000800l
 
#define DDVP_OVERRIDEBOBWEAVE   0x00001000l
 
#define DDVP_IGNOREVBIXCROP   0x00002000l
 
#define DDVPFORMAT_VIDEO   0x00000001l
 
#define DDVPFORMAT_VBI   0x00000002l
 
#define DDVPTARGET_VIDEO   0x00000001l
 
#define DDVPTARGET_VBI   0x00000002l
 
#define DDVPWAIT_BEGIN   0x00000001l
 
#define DDVPWAIT_END   0x00000002l
 
#define DDVPWAIT_LINE   0x00000003l
 
#define DDVPFLIP_VIDEO   0x00000001l
 
#define DDVPFLIP_VBI   0x00000002l
 
#define DDVPSQ_NOSIGNAL   0x00000001l
 
#define DDVPSQ_SIGNALOK   0x00000002l
 
#define DDVPB_VIDEOPORT   0x00000001l
 
#define DDVPB_OVERLAY   0x00000002l
 
#define DDVPB_TYPE   0x00000004l
 
#define DDVPBCAPS_SOURCE   0x00000001l
 
#define DDVPBCAPS_DESTINATION   0x00000002l
 

Typedefs

typedef struct IDDVideoPortContainer FAR * LPDDVIDEOPORTCONTAINER
 
typedef struct IDirectDrawVideoPort FAR * LPDIRECTDRAWVIDEOPORT
 
typedef struct _DDVIDEOPORTCONNECT FAR * LPDDVIDEOPORTCONNECT
 
typedef struct _DDVIDEOPORTCAPS FAR * LPDDVIDEOPORTCAPS
 
typedef struct _DDVIDEOPORTDESC FAR * LPDDVIDEOPORTDESC
 
typedef struct _DDVIDEOPORTINFO FAR * LPDDVIDEOPORTINFO
 
typedef struct _DDVIDEOPORTBANDWIDTH FAR * LPDDVIDEOPORTBANDWIDTH
 
typedef struct _DDVIDEOPORTSTATUS FAR * LPDDVIDEOPORTSTATUS
 
typedef struct IDDVideoPortContainerVtbl DDVIDEOPORTCONTAINERCALLBACKS
 
typedef struct IDirectDrawVideoPortVtbl DIRECTDRAWVIDEOPORTCALLBACKS
 
typedef struct _DDVIDEOPORTCONNECT DDVIDEOPORTCONNECT
 
typedef struct _DDVIDEOPORTCAPS DDVIDEOPORTCAPS
 
typedef struct _DDVIDEOPORTDESC DDVIDEOPORTDESC
 
typedef struct _DDVIDEOPORTINFO DDVIDEOPORTINFO
 
typedef struct _DDVIDEOPORTBANDWIDTH DDVIDEOPORTBANDWIDTH
 
typedef struct _DDVIDEOPORTSTATUS DDVIDEOPORTSTATUS
 

Functions

 DEFINE_GUID (IID_IDDVideoPortContainer, 0x6C142760, 0xA733, 0x11CE, 0xA5, 0x21, 0x00, 0x20, 0xAF, 0x0B, 0xE5, 0x60)
 
 DEFINE_GUID (IID_IDirectDrawVideoPort, 0xB36D93E0, 0x2B43, 0x11CF, 0xA2, 0xDE, 0x00, 0xAA, 0x00, 0xB9, 0x33, 0x56)
 
 DEFINE_GUID (DDVPTYPE_E_HREFH_VREFH, 0x54F39980L, 0xDA60, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8)
 
 DEFINE_GUID (DDVPTYPE_E_HREFH_VREFL, 0x92783220L, 0xDA60, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8)
 
 DEFINE_GUID (DDVPTYPE_E_HREFL_VREFH, 0xA07A02E0L, 0xDA60, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8)
 
 DEFINE_GUID (DDVPTYPE_E_HREFL_VREFL, 0xE09C77E0L, 0xDA60, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8)
 
 DEFINE_GUID (DDVPTYPE_CCIR656, 0xFCA326A0L, 0xDA60, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8)
 
 DEFINE_GUID (DDVPTYPE_BROOKTREE, 0x1352A560L, 0xDA61, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8)
 
 DEFINE_GUID (DDVPTYPE_PHILIPS, 0x332CF160L, 0xDA61, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8)
 
typedef HRESULT (FAR PASCAL *LPDDENUMVIDEOCALLBACK)(LPDDVIDEOPORTCAPS
 
 DECLARE_INTERFACE_ (IDDVideoPortContainer, IUnknown)
 
 DECLARE_INTERFACE_ (IDirectDrawVideoPort, IUnknown)
 

Variables

typedef LPVOID
 

Macro Definition Documentation

◆ CO_E_NOTINITIALIZED

#define CO_E_NOTINITIALIZED   0x800401F0L

◆ DDVP_AUTOFLIP

#define DDVP_AUTOFLIP   0x00000001l

Perform automatic flipping. Auto-flipping is performed between the overlay surface that was attached to the video port using IDirectDrawVideoPort::AttachSurface and the overlay surfaces that are attached to the surface via the IDirectDrawSurface::AttachSurface method. The flip order is the order in which the overlay surfaces were. attached.

◆ DDVP_CONVERT

#define DDVP_CONVERT   0x00000002l

Perform conversion using the ddpfOutputFormat information.

◆ DDVP_CROP

#define DDVP_CROP   0x00000004l

Perform cropping using the specified rectangle.

◆ DDVP_IGNOREVBIXCROP

#define DDVP_IGNOREVBIXCROP   0x00002000l

Indicates that the video data should ignore the left and right cropping coordinates when cropping the VBI data.

◆ DDVP_INTERLEAVE

#define DDVP_INTERLEAVE   0x00000008l

Indicates that interlaced fields should be interleaved in memory.

◆ DDVP_MIRRORLEFTRIGHT

#define DDVP_MIRRORLEFTRIGHT   0x00000010l

Indicates that the data should be mirrored left to right as it's written into the frame buffer.

◆ DDVP_MIRRORUPDOWN

#define DDVP_MIRRORUPDOWN   0x00000020l

Indicates that the data should be mirrored top to bottom as it's written into the frame buffer.

◆ DDVP_OVERRIDEBOBWEAVE

#define DDVP_OVERRIDEBOBWEAVE   0x00001000l

Indicates that these bob/weave decisions should not be overriden by other interfaces.

◆ DDVP_PRESCALE

#define DDVP_PRESCALE   0x00000040l

Perform pre-scaling/zooming based on the pre-scale parameters.

◆ DDVP_SKIPEVENFIELDS

#define DDVP_SKIPEVENFIELDS   0x00000080l

Ignore input of even fields.

◆ DDVP_SKIPODDFIELDS

#define DDVP_SKIPODDFIELDS   0x00000100l

Ignore input of odd fields.

◆ DDVP_SYNCMASTER

#define DDVP_SYNCMASTER   0x00000200l

Drive the graphics VSYNCs using the video port VYSNCs.

◆ DDVP_VBICONVERT

#define DDVP_VBICONVERT   0x00000400l

The ddpfVBIOutputFormatFormat member contains data that should be used to convert the data within the vertical blanking interval.

◆ DDVP_VBINOSCALE

#define DDVP_VBINOSCALE   0x00000800l

Indicates that data within the vertical blanking interval should not be scaled.

◆ DDVPB_OVERLAY

#define DDVPB_OVERLAY   0x00000002l

The specified height/width refer to the source size of the overlay.

◆ DDVPB_TYPE

#define DDVPB_TYPE   0x00000004l

This is a query for the device to return which caps this device requires.

◆ DDVPB_VIDEOPORT

#define DDVPB_VIDEOPORT   0x00000001l

The specified height/width refer to the size of the video port data written into memory, after prescaling has occured.

◆ DDVPBCAPS_DESTINATION

#define DDVPBCAPS_DESTINATION   0x00000002l

The bandwidth for this device is dependant on the overlay destination size.

◆ DDVPBCAPS_SOURCE

#define DDVPBCAPS_SOURCE   0x00000001l

The bandwidth for this device is dependant on the overlay source size.

◆ DDVPCAPS_AUTOFLIP

#define DDVPCAPS_AUTOFLIP   0x00000001l

Flip can be performed automatically to avoid tearing.

◆ DDVPCAPS_COLORCONTROL

#define DDVPCAPS_COLORCONTROL   0x00000400l

Indicates that the video port can perform color operations on the incoming data before it is written to the frame buffer.

◆ DDVPCAPS_INTERLACED

#define DDVPCAPS_INTERLACED   0x00000002l

Supports interlaced video

◆ DDVPCAPS_NONINTERLACED

#define DDVPCAPS_NONINTERLACED   0x00000004l

Supports non-interlaced video

◆ DDVPCAPS_OVERSAMPLEDVBI

#define DDVPCAPS_OVERSAMPLEDVBI   0x00000800l

Indicates that the video port can accept VBI data in a different width or format than the regular video data.

◆ DDVPCAPS_READBACKFIELD

#define DDVPCAPS_READBACKFIELD   0x00000008l

Indicates that the device can return whether the current field of an interlaced signal is even or odd.

◆ DDVPCAPS_READBACKLINE

#define DDVPCAPS_READBACKLINE   0x00000010l

Indicates that the device can return the current line of video being written into the frame buffer.

◆ DDVPCAPS_SHAREABLE

#define DDVPCAPS_SHAREABLE   0x00000020l

Allows two gen-locked video streams to share a single video port, where one stream uses the even fields and the other uses the odd fields. Separate parameters (including address, scaling, cropping, etc.) are maintained for both fields.)

◆ DDVPCAPS_SKIPEVENFIELDS

#define DDVPCAPS_SKIPEVENFIELDS   0x00000040l

Even fields of video can be automatically discarded.

◆ DDVPCAPS_SKIPODDFIELDS

#define DDVPCAPS_SKIPODDFIELDS   0x00000080l

Odd fields of video can be automatically discarded.

◆ DDVPCAPS_SYNCMASTER

#define DDVPCAPS_SYNCMASTER   0x00000100l

Indicates that the device is capable of driving the graphics VSYNC with the video port VSYNC.

◆ DDVPCAPS_SYSTEMMEMORY

#define DDVPCAPS_SYSTEMMEMORY   0x00001000l

Indicates that the video port can write data directly to system memory

◆ DDVPCAPS_VBISURFACE

#define DDVPCAPS_VBISURFACE   0x00000200l

Indicates that data within the vertical blanking interval can be written to a different surface.

◆ DDVPCONNECT_DISCARDSVREFDATA

#define DDVPCONNECT_DISCARDSVREFDATA   0x00000008l

Indicates that any data written to the video port during the VREF period will not be written into the frame buffer. This flag is read only.

◆ DDVPCONNECT_DOUBLECLOCK

#define DDVPCONNECT_DOUBLECLOCK   0x00000001l

When this is set by the driver and passed to the client, this indicates that the video port is capable of double clocking the data. When this is set by the client, this indicates that the video port should enable double clocking. This flag is only valid with external syncs.

◆ DDVPCONNECT_HALFLINE

#define DDVPCONNECT_HALFLINE   0x00000010l

Device will write half lines into the frame buffer, sometimes causing the data to not be displayed correctly.

◆ DDVPCONNECT_INTERLACED

#define DDVPCONNECT_INTERLACED   0x00000020l

Indicates that the signal is interlaced. This flag is only set by the client.

◆ DDVPCONNECT_INVERTPOLARITY

#define DDVPCONNECT_INVERTPOLARITY   0x00000004l

When this is set by the driver and passed to the client, this indicates that the video port is capable of treating even fields like odd fields and visa versa. When this is set by the client, this indicates that the video port should treat even fields like odd fields.

◆ DDVPCONNECT_SHAREEVEN

#define DDVPCONNECT_SHAREEVEN   0x00000040l

Indicates that video port is shareable and that this video port will use the even fields. This flag is only set by the client.

◆ DDVPCONNECT_SHAREODD

#define DDVPCONNECT_SHAREODD   0x00000080l

Indicates that video port is shareable and that this video port will use the odd fields. This flag is only set by the client.

◆ DDVPCONNECT_VACT

#define DDVPCONNECT_VACT   0x00000002l

When this is set by the driver and passed to the client, this indicates that the video port is capable of using an external VACT signal. When this is set by the client, this indicates that the video port should use the external VACT signal.

◆ DDVPD_ALIGN

#define DDVPD_ALIGN   0x00000040l

All of the alignment members are valid

◆ DDVPD_AUTOFLIP

#define DDVPD_AUTOFLIP   0x00000020l

The dwNumAutoFlipSurfaces member is valid

◆ DDVPD_CAPS

#define DDVPD_CAPS   0x00000008l

The dwCaps member is valid

◆ DDVPD_FX

#define DDVPD_FX   0x00000010l

The dwFX member is valid

◆ DDVPD_HEIGHT

#define DDVPD_HEIGHT   0x00000002l

The dwMaxHeight member is valid

◆ DDVPD_ID

#define DDVPD_ID   0x00000004l

The dwVideoPortID member is valid

◆ DDVPD_WIDTH

#define DDVPD_WIDTH   0x00000001l

The dwMaxWidth and dwMaxVBIWidth members are valid

◆ DDVPFLIP_VBI

#define DDVPFLIP_VBI   0x00000002l

Flips the VBI surface

◆ DDVPFLIP_VIDEO

#define DDVPFLIP_VIDEO   0x00000001l

Flips the normal video surface

◆ DDVPFORMAT_VBI

#define DDVPFORMAT_VBI   0x00000002l

Return formats for the VBI data

◆ DDVPFORMAT_VIDEO

#define DDVPFORMAT_VIDEO   0x00000001l

Return formats for the video data

◆ DDVPFX_CROPTOPDATA

#define DDVPFX_CROPTOPDATA   0x00000001l

Limited cropping is available to crop out the vertical interval data.

◆ DDVPFX_CROPX

#define DDVPFX_CROPX   0x00000002l

Incoming data can be cropped in the X direction before it is written to the surface.

◆ DDVPFX_CROPY

#define DDVPFX_CROPY   0x00000004l

Incoming data can be cropped in the Y direction before it is written to the surface.

◆ DDVPFX_IGNOREVBIXCROP

#define DDVPFX_IGNOREVBIXCROP   0x00040000l

Indicates that the video data can ignore the left and right cropping coordinates when cropping oversampled VBI data.

◆ DDVPFX_INTERLEAVE

#define DDVPFX_INTERLEAVE   0x00000008l

Supports interleaving interlaced fields in memory.

◆ DDVPFX_MIRRORLEFTRIGHT

#define DDVPFX_MIRRORLEFTRIGHT   0x00000010l

Supports mirroring left to right as the video data is written into the frame buffer.

◆ DDVPFX_MIRRORUPDOWN

#define DDVPFX_MIRRORUPDOWN   0x00000020l

Supports mirroring top to bottom as the video data is written into the frame buffer.

◆ DDVPFX_PRESHRINKX

#define DDVPFX_PRESHRINKX   0x00000040l

Data can be arbitrarily shrunk in the X direction before it is written to the surface.

◆ DDVPFX_PRESHRINKXB

#define DDVPFX_PRESHRINKXB   0x00000100l

Data can be binary shrunk (1/2, 1/4, 1/8, etc.) in the X direction before it is written to the surface.

◆ DDVPFX_PRESHRINKXS

#define DDVPFX_PRESHRINKXS   0x00000400l

Data can be shrunk in increments of 1/x in the X direction (where X is specified in the DDVIDEOPORTCAPS.dwPreshrinkXStep) before it is written to the surface.

◆ DDVPFX_PRESHRINKY

#define DDVPFX_PRESHRINKY   0x00000080l

Data can be arbitrarily shrunk in the Y direction before it is written to the surface.

◆ DDVPFX_PRESHRINKYB

#define DDVPFX_PRESHRINKYB   0x00000200l

Data can be binary shrunk (1/2, 1/4, 1/8, etc.) in the Y direction before it is written to the surface.

◆ DDVPFX_PRESHRINKYS

#define DDVPFX_PRESHRINKYS   0x00000800l

Data can be shrunk in increments of 1/x in the Y direction (where X is specified in the DDVIDEOPORTCAPS.dwPreshrinkYStep) before it is written to the surface.

◆ DDVPFX_PRESTRETCHX

#define DDVPFX_PRESTRETCHX   0x00001000l

Data can be arbitrarily stretched in the X direction before it is written to the surface.

◆ DDVPFX_PRESTRETCHXN

#define DDVPFX_PRESTRETCHXN   0x00004000l

Data can be integer stretched in the X direction before it is written to the surface.

◆ DDVPFX_PRESTRETCHY

#define DDVPFX_PRESTRETCHY   0x00002000l

Data can be arbitrarily stretched in the Y direction before it is written to the surface.

◆ DDVPFX_PRESTRETCHYN

#define DDVPFX_PRESTRETCHYN   0x00008000l

Data can be integer stretched in the Y direction before it is written to the surface.

◆ DDVPFX_VBICONVERT

#define DDVPFX_VBICONVERT   0x00010000l

Indicates that data within the vertical blanking interval can be converted independently of the remaining video data.

◆ DDVPFX_VBINOSCALE

#define DDVPFX_VBINOSCALE   0x00020000l

Indicates that scaling can be disabled for data within the vertical blanking interval.

◆ DDVPSQ_NOSIGNAL

#define DDVPSQ_NOSIGNAL   0x00000001l

No video signal is present at the video port

◆ DDVPSQ_SIGNALOK

#define DDVPSQ_SIGNALOK   0x00000002l

A valid video signal is present at the video port

◆ DDVPTARGET_VBI

#define DDVPTARGET_VBI   0x00000002l

Surface should receive VBI data

◆ DDVPTARGET_VIDEO

#define DDVPTARGET_VIDEO   0x00000001l

Surface should receive video data (and VBI data if a surface is not explicitly attached for that purpose)

◆ DDVPWAIT_BEGIN

#define DDVPWAIT_BEGIN   0x00000001l

Waits until the beginning of the next VSYNC

◆ DDVPWAIT_END

#define DDVPWAIT_END   0x00000002l

Waits until the end of the next/current VSYNC

◆ DDVPWAIT_LINE

#define DDVPWAIT_LINE   0x00000003l

Waits until the beginning of the specified line

◆ INTERFACE [1/2]

#define INTERFACE   IDDVideoPortContainer

◆ INTERFACE [2/2]

#define INTERFACE   IDirectDrawVideoPort

◆ IUnknown

#define IUnknown   void

◆ IVideoPort_AddRef

#define IVideoPort_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IVideoPort_Flip

#define IVideoPort_Flip (   p,
  a,
 
)    (p)->lpVtbl->Flip(p,a,b)

◆ IVideoPort_GetBandwidthInfo

#define IVideoPort_GetBandwidthInfo (   p,
  a,
  b,
  c,
  d,
 
)    (p)->lpVtbl->GetBandwidthInfo(p,a,b,c,d,e)

◆ IVideoPort_GetColorControls

#define IVideoPort_GetColorControls (   p,
 
)    (p)->lpVtbl->GetColorControls(p,a)

◆ IVideoPort_GetFieldPolarity

#define IVideoPort_GetFieldPolarity (   p,
 
)    (p)->lpVtbl->GetFieldPolarity(p,a)

◆ IVideoPort_GetInputFormats

#define IVideoPort_GetInputFormats (   p,
  a,
  b,
 
)    (p)->lpVtbl->GetInputFormats(p,a,b,c)

◆ IVideoPort_GetOutputFormats

#define IVideoPort_GetOutputFormats (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->GetOutputFormats(p,a,b,c,d)

◆ IVideoPort_GetVideoLine

#define IVideoPort_GetVideoLine (   p,
 
)    (p)->lpVtbl->GetVideoLine(p,a)

◆ IVideoPort_GetVideoSignalStatus

#define IVideoPort_GetVideoSignalStatus (   p,
 
)    (p)->lpVtbl->GetVideoSignalStatus(p,a)

◆ IVideoPort_QueryInterface

#define IVideoPort_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IVideoPort_Release

#define IVideoPort_Release (   p)    (p)->lpVtbl->Release(p)

◆ IVideoPort_SetColorControls

#define IVideoPort_SetColorControls (   p,
 
)    (p)->lpVtbl->SetColorControls(p,a)

◆ IVideoPort_SetTargetSurface

#define IVideoPort_SetTargetSurface (   p,
  a,
 
)    (p)->lpVtbl->SetTargetSurface(p,a,b)

◆ IVideoPort_StartVideo

#define IVideoPort_StartVideo (   p,
 
)    (p)->lpVtbl->StartVideo(p,a)

◆ IVideoPort_StopVideo

#define IVideoPort_StopVideo (   p)    (p)->lpVtbl->StopVideo(p)

◆ IVideoPort_UpdateVideo

#define IVideoPort_UpdateVideo (   p,
 
)    (p)->lpVtbl->UpdateVideo(p,a)

◆ IVideoPort_WaitForSync

#define IVideoPort_WaitForSync (   p,
  a,
  b,
 
)    (p)->lpVtbl->WaitForSync(p,a,b,c)

◆ IVideoPortContainer_AddRef

#define IVideoPortContainer_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IVideoPortContainer_CreateVideoPort

#define IVideoPortContainer_CreateVideoPort (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->CreateVideoPort(p, a, b, c, d)

◆ IVideoPortContainer_EnumVideoPorts

#define IVideoPortContainer_EnumVideoPorts (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->EnumVideoPorts(p, a, b, c, d)

◆ IVideoPortContainer_GetVideoPortConnectInfo

#define IVideoPortContainer_GetVideoPortConnectInfo (   p,
  a,
  b,
 
)    (p)->lpVtbl->GetVideoPortConnectInfo(p, a, b, c)

◆ IVideoPortContainer_QueryInterface

#define IVideoPortContainer_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p, a, b)

◆ IVideoPortContainer_QueryVideoPortStatus

#define IVideoPortContainer_QueryVideoPortStatus (   p,
  a,
 
)    (p)->lpVtbl->QueryVideoPortStatus(p, a, b)

◆ IVideoPortContainer_Release

#define IVideoPortContainer_Release (   p)    (p)->lpVtbl->Release(p)

Typedef Documentation

◆ DDVIDEOPORTBANDWIDTH

◆ DDVIDEOPORTCAPS

◆ DDVIDEOPORTCONNECT

◆ DDVIDEOPORTCONTAINERCALLBACKS

typedef struct IDDVideoPortContainerVtbl DDVIDEOPORTCONTAINERCALLBACKS

◆ DDVIDEOPORTDESC

◆ DDVIDEOPORTINFO

◆ DDVIDEOPORTSTATUS

◆ DIRECTDRAWVIDEOPORTCALLBACKS

typedef struct IDirectDrawVideoPortVtbl DIRECTDRAWVIDEOPORTCALLBACKS

◆ LPDDVIDEOPORTBANDWIDTH

◆ LPDDVIDEOPORTCAPS

typedef struct _DDVIDEOPORTCAPS FAR* LPDDVIDEOPORTCAPS

◆ LPDDVIDEOPORTCONNECT

◆ LPDDVIDEOPORTCONTAINER

typedef struct IDDVideoPortContainer FAR* LPDDVIDEOPORTCONTAINER

◆ LPDDVIDEOPORTDESC

typedef struct _DDVIDEOPORTDESC FAR* LPDDVIDEOPORTDESC

◆ LPDDVIDEOPORTINFO

typedef struct _DDVIDEOPORTINFO FAR* LPDDVIDEOPORTINFO

◆ LPDDVIDEOPORTSTATUS

◆ LPDIRECTDRAWVIDEOPORT

typedef struct IDirectDrawVideoPort FAR* LPDIRECTDRAWVIDEOPORT

Function Documentation

◆ DECLARE_INTERFACE_() [1/2]

DECLARE_INTERFACE_ ( IDDVideoPortContainer  ,
IUnknown   
)

References DWORD(), IUnknown, and LPVOID.

◆ DECLARE_INTERFACE_() [2/2]

DECLARE_INTERFACE_ ( IDirectDrawVideoPort  ,
IUnknown   
)

References DWORD().

◆ DEFINE_GUID() [1/9]

DEFINE_GUID ( DDVPTYPE_BROOKTREE  ,
0x1352A560L  ,
0xDA61  ,
0x11CF  ,
0x9B  ,
0x06  ,
0x00  ,
0xA0  ,
0xC9  ,
0x03  ,
0xA3  ,
0xB8   
)

◆ DEFINE_GUID() [2/9]

DEFINE_GUID ( DDVPTYPE_CCIR656  ,
0xFCA326A0L  ,
0xDA60  ,
0x11CF  ,
0x9B  ,
0x06  ,
0x00  ,
0xA0  ,
0xC9  ,
0x03  ,
0xA3  ,
0xB8   
)

◆ DEFINE_GUID() [3/9]

DEFINE_GUID ( DDVPTYPE_E_HREFH_VREFH  ,
0x54F39980L  ,
0xDA60  ,
0x11CF  ,
0x9B  ,
0x06  ,
0x00  ,
0xA0  ,
0xC9  ,
0x03  ,
0xA3  ,
0xB8   
)

◆ DEFINE_GUID() [4/9]

DEFINE_GUID ( DDVPTYPE_E_HREFH_VREFL  ,
0x92783220L  ,
0xDA60  ,
0x11CF  ,
0x9B  ,
0x06  ,
0x00  ,
0xA0  ,
0xC9  ,
0x03  ,
0xA3  ,
0xB8   
)

◆ DEFINE_GUID() [5/9]

DEFINE_GUID ( DDVPTYPE_E_HREFL_VREFH  ,
0xA07A02E0L  ,
0xDA60  ,
0x11CF  ,
0x9B  ,
0x06  ,
0x00  ,
0xA0  ,
0xC9  ,
0x03  ,
0xA3  ,
0xB8   
)

◆ DEFINE_GUID() [6/9]

DEFINE_GUID ( DDVPTYPE_E_HREFL_VREFL  ,
0xE09C77E0L  ,
0xDA60  ,
0x11CF  ,
0x9B  ,
0x06  ,
0x00  ,
0xA0  ,
0xC9  ,
0x03  ,
0xA3  ,
0xB8   
)

◆ DEFINE_GUID() [7/9]

DEFINE_GUID ( DDVPTYPE_PHILIPS  ,
0x332CF160L  ,
0xDA61  ,
0x11CF  ,
0x9B  ,
0x06  ,
0x00  ,
0xA0  ,
0xC9  ,
0x03  ,
0xA3  ,
0xB8   
)

◆ DEFINE_GUID() [8/9]

DEFINE_GUID ( IID_IDDVideoPortContainer  ,
0x6C142760  ,
0xA733  ,
0x11CE  ,
0xA5  ,
0x21  ,
0x00  ,
0x20  ,
0xAF  ,
0x0B  ,
0xE5  ,
0x60   
)

◆ DEFINE_GUID() [9/9]

DEFINE_GUID ( IID_IDirectDrawVideoPort  ,
0xB36D93E0  ,
0x2B43  ,
0x11CF  ,
0xA2  ,
0xDE  ,
0x00  ,
0xAA  ,
0x00  ,
0xB9  ,
0x33  ,
0x56   
)

◆ HRESULT()

typedef HRESULT ( FAR PASCAL *  LPDDENUMVIDEOCALLBACK)

Variable Documentation

◆ LPVOID

typedef LPVOID

Referenced by DECLARE_INTERFACE_().