|
1 #ifndef _DSHOW_H |
|
2 #define _DSHOW_H |
|
3 #if __GNUC__ >=3 |
|
4 #pragma GCC system_header |
|
5 #endif |
|
6 |
|
7 #include <strmif.h> |
|
8 #include <amaudio.h> |
|
9 #include <amvideo.h> |
|
10 #include <evcode.h> |
|
11 #include <audevcod.h> |
|
12 #include <dvdevcod.h> |
|
13 #include <errors.h> |
|
14 #include <vptype.h> |
|
15 #include <ks.h> |
|
16 #include <vidcap.h> |
|
17 #include <bdatypes.h> |
|
18 #include <dvdmedia.h> |
|
19 #include <il21dec.h> |
|
20 #include <ddraw.h> /* DDSCAPS2, DDPIXELFORMAT */ |
|
21 #ifndef _WINGDI_H |
|
22 #include <wingdi.h> /* BITMAPINFOHEADER */ |
|
23 #endif |
|
24 |
|
25 #ifdef __cplusplus |
|
26 extern "C" { |
|
27 #endif |
|
28 |
|
29 /*--- DirectShow Reference - DirectShow Enumerated Types */ |
|
30 typedef enum _AM_ASPECT_RATIO_MODE { |
|
31 AM_ARMODE_STRETCHED, |
|
32 AM_ARMODE_LETTER_BOX, |
|
33 AM_ARMODE_CROP, |
|
34 AM_ARMODE_STRETCHED_AS_PRIMARY |
|
35 } AM_ASPECT_RATIO_MODE; |
|
36 typedef enum _AM_WST_DRAWBGMODE { |
|
37 AM_WST_DRAWBGMODE_Opaque, |
|
38 AM_WST_DRAWBGMODE_Transparent |
|
39 } AM_WST_DRAWBGMODE,*PAM_WST_DRAWBGMODE; |
|
40 typedef enum _AM_WST_LEVEL { |
|
41 AM_WST_LEVEL_1_5 = 0 |
|
42 } AM_WST_LEVEL,*PAM_WST_LEVEL; |
|
43 typedef enum _AM_WST_SERVICE { |
|
44 AM_WST_SERVICE_None = 0, |
|
45 AM_WST_SERVICE_Text, |
|
46 AM_WST_SERVICE_IDS, |
|
47 AM_WST_SERVICE_Invalid |
|
48 } AM_WST_SERVICE,*PAM_WST_SERVICE; |
|
49 typedef enum _AM_WST_STATE { |
|
50 AM_WST_STATE_Off = 0, |
|
51 AM_WST_STATE_On |
|
52 } AM_WST_STATE,*PAM_WST_STATE; |
|
53 typedef enum _AM_WST_STYLE { |
|
54 AM_WST_STYLE_None = 0, |
|
55 AM_WST_STYLE_Invers |
|
56 } AM_WST_STYLE,*PAM_WST_STYLE; |
|
57 typedef enum { |
|
58 AM_EXSEEK_CANSEEK= 1, |
|
59 AM_EXSEEK_CANSCAN = 2, |
|
60 AM_EXSEEK_MARKERSEEK = 4, |
|
61 AM_EXSEEK_SCANWITHOUTCLOCK = 8, |
|
62 AM_EXSEEK_NOSTANDARDREPAINT = 16, |
|
63 AM_EXSEEK_BUFFERING = 32, |
|
64 AM_EXSEEK_SENDS_VIDEOFRAMEREADY = 64 |
|
65 } AMExtendedSeekingCapabilities; |
|
66 /*--- DirectShow Reference - DirectShow Structures */ |
|
67 typedef struct _AM_WST_PAGE { |
|
68 DWORD dwPageNr; |
|
69 DWORD dwSubPageNr; |
|
70 BYTE *pucPageData; |
|
71 } AM_WST_PAGE,*PAM_WST_PAGE; |
|
72 typedef struct _tag_AMVABeginFrameInfo{ |
|
73 DWORD dwDestSurfaceIndex; |
|
74 LPVOID pInputData; |
|
75 DWORD dwSizeInputData; |
|
76 LPVOID pOutputData; |
|
77 DWORD dwSizeOutputData; |
|
78 } AMVABeginFrameInfo,*LPAMVABeginFrameInfo; |
|
79 typedef struct _tag_AMVACompBufferInfo{ |
|
80 DWORD dwNumCompBuffers; |
|
81 DWORD dwWidthToCreate; |
|
82 DWORD dwHeightToCreate; |
|
83 DWORD dwBytesToAllocate; |
|
84 DDSCAPS2 ddCompCaps; |
|
85 DDPIXELFORMAT ddPixelFormat; |
|
86 } AMVACompBufferInfo,*LPAMVACompBufferInfo; |
|
87 typedef struct _tag_AMVAEndFrameInfo{ |
|
88 DWORD dwSizeMiscData; |
|
89 LPVOID pMiscData; |
|
90 } AMVAEndFrameInfo,*LPAMVAEndFrameInfo; |
|
91 typedef struct _tag_AMVAInternalMemInfo{ |
|
92 DWORD dwScratchMemAlloc; |
|
93 } AMVAInternalMemInfo,*LPAMVAInternalMemInfo; |
|
94 typedef struct _tag_AMVAUncompBufferInfo{ |
|
95 DWORD dwMinNumSurfaces; |
|
96 DWORD dwMaxNumSurfaces; |
|
97 DDPIXELFORMAT ddUncompPixelFormat; |
|
98 } AMVAUncompBufferInfo,*LPAMVAUncompBufferInfo; |
|
99 typedef struct _tag_AMVAUncompDataInfo{ |
|
100 DWORD dwUncompWidth; |
|
101 DWORD dwUncompHeight; |
|
102 DDPIXELFORMAT ddUncompPixelFormat; |
|
103 } AMVAUncompDataInfo,*LPAMVAUncompDataInfo; |
|
104 |
|
105 #ifdef __cplusplus |
|
106 } |
|
107 #endif |
|
108 #endif |