4 #pragma GCC system_header
15 /*--- DirectShow Reference - DirectShow Structures - AM_SAMPLE2_PROPERTIES Structure */
16 #define AM_VIDEO_FLAG_FIELD_MASK 0x0003
17 #define AM_VIDEO_FLAG_INTERLEAVED_FRAME 0x0000
18 #define AM_VIDEO_FLAG_FIELD1 0x0001
19 #define AM_VIDEO_FLAG_FIELD2 0x0002
20 #define AM_VIDEO_FLAG_FIELD1FIRST 0x0004
21 #define AM_VIDEO_FLAG_WEAVE 0x0008
22 #define AM_VIDEO_FLAG_REPEAT_FIELD 0x0040
23 /*--- DirectShow Reference - DirectShow Enumerated Types */
25 AM_MPEG2Level_Low
= 1,
27 AM_MPEG2Level_High1440
,
30 enum AM_MPEG2Profile
{
31 AM_MPEG2Profile_Simple
= 1,
33 AM_MPEG2Profile_SNRScalable
,
34 AM_MPEG2Profile_SpatiallyScalable
,
38 AM_RATE_ChangeRate
= 1,
39 AM_RATE_FullDataRateMax
= 2,
40 AM_RATE_ReverseDecode
= 3,
41 AM_RATE_DecoderPosition
= 4,
42 AM_RATE_DecoderVersion
= 5
43 } AM_PROPERTY_DVD_RATE_CHANGE
;
44 /*--- DirectShow Reference - DirectShow Structures */
45 typedef struct tagVIDEOINFOHEADER2
{
50 REFERENCE_TIME AvgTimePerFrame
;
51 DWORD dwInterlaceFlags
;
52 DWORD dwCopyProtectFlags
;
53 DWORD dwPictAspectRatioX
;
54 DWORD dwPictAspectRatioY
;
60 BITMAPINFOHEADER bmiHeader
;
62 #define AMINTERLACE_IsInterlaced 0x00000001
63 #define AMINTERLACE_1FieldPerSample 0x00000002
64 #define AMINTERLACE_Field1First 0x00000004
65 #define AMINTERLACE_FieldPatField1Only 0x00000000
66 #define AMINTERLACE_FieldPatField2Only 0x00000010
67 #define AMINTERLACE_FieldPatBothRegular 0x00000020
68 #define AMINTERLACE_FieldPatBothIrregular 0x00000030
69 #define AMINTERLACE_DisplayModeBobOnly 0x00000000
70 #define AMINTERLACE_DisplayModeWeaveOnly 0x00000040
71 #define AMINTERLACE_DisplayModeBobOrWeave 0x00000080
72 #define AMINTERLACE_FieldPatternMask 0x00000030
73 #define AMINTERLACE_DisplayModeMask 0x000000C0
74 #define AMCONTROL_USED 0x00000001
75 #define AMCONTROL_PAD_TO_4x3 0x00000002
76 #define AMCONTROL_PAD_TO_16x9 0x00000004
77 #define AMCONTROL_COLORINFO_PRESENT 0x00000008
78 typedef struct tagMPEG2VIDEOINFO
{
80 DWORD dwStartTimeCode
;
81 DWORD cbSequenceHeader
;
85 DWORD dwSequenceHeader
[1];
87 #define AMMPEG2_DoPanScan 0x00000001
88 #define AMMPEG2_DVDLine21Field1 0x00000002
89 #define AMMPEG2_DVDLine21Field2 0x00000004
90 #define AMMPEG2_SourceIsLetterboxed 0x00000008
91 #define AMMPEG2_FilmCameraMode 0x00000010
92 #define AMMPEG2_LetterboxAnalogOut 0x00000020
93 #define AMMPEG2_DSS_UserData 0x00000040
94 #define AMMPEG2_DVB_UserData 0x00000080
95 #define AMMPEG2_27MhzTimebase 0x00000100
96 #define AMMPEG2_WidescreenAnalogOut 0x00000200