Work around MinGW mangling of "host:/path"
[msysgit/historical-msysgit.git] / mingw / include / dvdmedia.h
blob0a312c088f7c0213ae08e6a4bb90d86c2629290f
1 #ifndef _DVDMEDIA_H
2 #define _DVDMEDIA_H
3 #if __GNUC__ >= 3
4 #pragma GCC system_header
5 #endif
7 #ifndef _STRMIF_H
8 #include <strmif.h>
9 #endif
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
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 */
24 enum AM_MPEG2Level {
25 AM_MPEG2Level_Low = 1,
26 AM_MPEG2Level_Main,
27 AM_MPEG2Level_High1440,
28 AM_MPEG2Level_High
30 enum AM_MPEG2Profile {
31 AM_MPEG2Profile_Simple = 1,
32 AM_MPEG2Profile_Main,
33 AM_MPEG2Profile_SNRScalable,
34 AM_MPEG2Profile_SpatiallyScalable,
35 AM_MPEG2Profile_High
37 typedef enum {
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 {
46 RECT rcSource;
47 RECT rcTarget;
48 DWORD dwBitRate;
49 DWORD dwBitErrorRate;
50 REFERENCE_TIME AvgTimePerFrame;
51 DWORD dwInterlaceFlags;
52 DWORD dwCopyProtectFlags;
53 DWORD dwPictAspectRatioX;
54 DWORD dwPictAspectRatioY;
55 union {
56 DWORD dwControlFlags;
57 DWORD dwReserved1;
59 DWORD dwReserved2;
60 BITMAPINFOHEADER bmiHeader;
61 } VIDEOINFOHEADER2;
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 {
79 VIDEOINFOHEADER2 hdr;
80 DWORD dwStartTimeCode;
81 DWORD cbSequenceHeader;
82 DWORD dwProfile;
83 DWORD dwLevel;
84 DWORD dwFlags;
85 DWORD dwSequenceHeader[1];
86 } MPEG2VIDEOINFO;
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
98 #ifdef __cplusplus
100 #endif
101 #endif