1 2 #ifndef __IVPType__ 3 #define __IVPType__ 4 5 #ifdef __cplusplus 6 extern "C" { 7 #endif 8 9 typedef enum _AMVP_MODE 10 { 11 AMVP_MODE_WEAVE, 12 AMVP_MODE_BOBINTERLEAVED, 13 AMVP_MODE_BOBNONINTERLEAVED, 14 AMVP_MODE_SKIPEVEN, 15 AMVP_MODE_SKIPODD 16 } AMVP_MODE; 17 18 typedef enum _AMVP_SELECT_FORMAT_BY 19 { 20 AMVP_DO_NOT_CARE, 21 AMVP_BEST_BANDWIDTH, 22 AMVP_INPUT_SAME_AS_OUTPUT 23 } AMVP_SELECT_FORMAT_BY; 24 25 typedef struct _AMVPSIZE 26 { 27 DWORD dwWidth; 28 DWORD dwHeight; 29 } AMVPSIZE, *LPAMVPSIZE; 30 31 typedef struct _AMVPDIMINFO 32 { 33 DWORD dwFieldWidth; 34 DWORD dwFieldHeight; 35 DWORD dwVBIWidth; 36 DWORD dwVBIHeight; 37 RECT rcValidRegion; 38 } AMVPDIMINFO, *LPAMVPDIMINFO; 39 40 typedef struct _AMVPDATAINFO 41 { 42 DWORD dwSize; 43 DWORD dwMicrosecondsPerField; 44 AMVPDIMINFO amvpDimInfo; 45 DWORD dwPictAspectRatioX; 46 DWORD dwPictAspectRatioY; 47 BOOL bEnableDoubleClock; 48 BOOL bEnableVACT; 49 BOOL bDataIsInterlaced; 50 LONG lHalfLinesOdd; 51 BOOL bFieldPolarityInverted; 52 DWORD dwNumLinesInVREF; 53 LONG lHalfLinesEven; 54 DWORD dwReserved1; 55 } AMVPDATAINFO, *LPAMVPDATAINFO; 56 57 #ifdef __cplusplus 58 } 59 #endif 60 61 #endif 62 63