diff options
author | Fire-Head <Fire-Head@users.noreply.github.com> | 2019-06-02 05:00:38 +0200 |
---|---|---|
committer | Fire-Head <Fire-Head@users.noreply.github.com> | 2019-06-02 05:00:38 +0200 |
commit | b1f9e28cd155459ab2843690c248ed9f4767bc3f (patch) | |
tree | 8e7d2a33d4c5109ea3c3562940268afc57d0915c /dxsdk/Include/vptype.h | |
parent | rw skeleton (diff) | |
download | re3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.tar re3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.tar.gz re3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.tar.bz2 re3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.tar.lz re3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.tar.xz re3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.tar.zst re3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.zip |
Diffstat (limited to 'dxsdk/Include/vptype.h')
-rw-r--r-- | dxsdk/Include/vptype.h | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/dxsdk/Include/vptype.h b/dxsdk/Include/vptype.h new file mode 100644 index 00000000..b03baae6 --- /dev/null +++ b/dxsdk/Include/vptype.h @@ -0,0 +1,78 @@ +//------------------------------------------------------------------------------ +// File: VPType.h +// +// Desc: This file includes all the data structures defined for the IVPConfig +// interface. +// +// Copyright (c) 1997-2001, Microsoft Corporation. All rights reserved. +//------------------------------------------------------------------------------ + + +#ifndef __IVPType__ +#define __IVPType__ + +#ifdef __cplusplus +extern "C" { +#endif + + // enum to specify the criterion, which the vpmixer is supposed to use + // in order to select the video format + typedef enum _AMVP_SELECT_FORMAT_BY + { + AMVP_DO_NOT_CARE, + AMVP_BEST_BANDWIDTH, + AMVP_INPUT_SAME_AS_OUTPUT + } AMVP_SELECT_FORMAT_BY; + + // enum to specify the various mode + typedef enum _AMVP_MODE + { + AMVP_MODE_WEAVE, + AMVP_MODE_BOBINTERLEAVED, + AMVP_MODE_BOBNONINTERLEAVED, + AMVP_MODE_SKIPEVEN, + AMVP_MODE_SKIPODD + } AMVP_MODE; + + // struct to specify the width and height. The context could be anything + // such as scaling cropping etc. + typedef struct _AMVPSIZE + { + DWORD dwWidth; // the width + DWORD dwHeight; // the height + } AMVPSIZE, *LPAMVPSIZE; + + // struct to specify the dimensional characteristics of the input stream + typedef struct _AMVPDIMINFO + { + DWORD dwFieldWidth; // Field height of the data + DWORD dwFieldHeight; // Field width of the data + DWORD dwVBIWidth; // Width of the VBI data + DWORD dwVBIHeight; // Height of the VBI data + RECT rcValidRegion; // The vaild rectangle, used for cropping + } AMVPDIMINFO, *LPAMVPDIMINFO; + + // struct to specify the various data specific characteristics of the input stream + typedef struct _AMVPDATAINFO + { + DWORD dwSize; // Size of the struct + DWORD dwMicrosecondsPerField; // Time taken by each field + AMVPDIMINFO amvpDimInfo; // Dimensional Information + DWORD dwPictAspectRatioX; // X dimension of Picture Aspect Ratio + DWORD dwPictAspectRatioY; // Y dimension of Picture Aspect Ratio + BOOL bEnableDoubleClock; // Videoport should enable double clocking + BOOL bEnableVACT; // Videoport should use an external VACT signal + BOOL bDataIsInterlaced; // Indicates that the signal is interlaced + LONG lHalfLinesOdd; // number of halflines in the odd field + BOOL bFieldPolarityInverted; // Device inverts the polarity by default + DWORD dwNumLinesInVREF; // Number of lines of data in VREF + LONG lHalfLinesEven; // number of halflines in the even field + DWORD dwReserved1; // Reserved for future use + } AMVPDATAINFO, *LPAMVPDATAINFO; + + +#ifdef __cplusplus +} +#endif + +#endif // __IVPType__ |