168
|
1 #ifndef GUIDS_H
|
|
2 #define GUIDS_H
|
1545
|
3
|
2069
|
4 #include "com.h"
|
3467
|
5 #include "wine/module.h"
|
|
6 #include "wine/windef.h"
|
2069
|
7 #include "wine/vfw.h"
|
|
8
|
168
|
9 extern int DSHOW_DEBUG;
|
|
10 #define Debug if(DSHOW_DEBUG)
|
|
11
|
3467
|
12 typedef struct __attribute__((__packed__)) _MediaType
|
168
|
13 {
|
3056
|
14 GUID majortype; //0x0
|
|
15 GUID subtype; //0x10
|
|
16 int bFixedSizeSamples; //0x20
|
|
17 int bTemporalCompression; //0x24
|
|
18 unsigned long lSampleSize; //0x28
|
|
19 GUID formattype; //0x2c
|
|
20 IUnknown* pUnk; //0x3c
|
|
21 unsigned long cbFormat; //0x40
|
3467
|
22 char* pbFormat; //0x44
|
168
|
23 } AM_MEDIA_TYPE;
|
1545
|
24
|
168
|
25 typedef enum
|
|
26 {
|
3467
|
27 PINDIR_INPUT = 0,
|
|
28 PINDIR_OUTPUT
|
168
|
29 } PIN_DIRECTION;
|
1545
|
30
|
168
|
31 typedef long long REFERENCE_TIME;
|
1545
|
32
|
3467
|
33 typedef struct __attribute__((__packed__)) RECT32
|
168
|
34 {
|
|
35 int left, top, right, bottom;
|
3056
|
36 } RECT32;
|
1545
|
37
|
3467
|
38 typedef struct __attribute__((__packed__)) tagVIDEOINFOHEADER {
|
168
|
39
|
|
40 RECT32 rcSource; // The bit we really want to use
|
|
41 RECT32 rcTarget; // Where the video should go
|
|
42 unsigned long dwBitRate; // Approximate bit data rate
|
|
43 unsigned long dwBitErrorRate; // Bit error rate for this stream
|
1545
|
44 REFERENCE_TIME AvgTimePerFrame; // Average time per frame (100ns units)
|
3467
|
45 BITMAPINFOHEADER bmiHeader;
|
|
46 //int reserved[3];
|
1545
|
47 } VIDEOINFOHEADER;
|
168
|
48
|
|
49 typedef struct _AllocatorProperties
|
|
50 {
|
|
51 long cBuffers;
|
|
52 long cbBuffer;
|
|
53 long cbAlign;
|
|
54 long cbPrefix;
|
1545
|
55 } ALLOCATOR_PROPERTIES;
|
|
56
|
3056
|
57 typedef struct _IBaseFilter IBaseFilter;
|
168
|
58 typedef struct _PinInfo
|
|
59 {
|
3056
|
60 IBaseFilter* pFilter;
|
168
|
61 PIN_DIRECTION dir;
|
1545
|
62 unsigned short achName[128];
|
|
63 } PIN_INFO;
|
168
|
64
|
3056
|
65
|
168
|
66 extern GUID IID_IBaseFilter;
|
|
67 extern GUID IID_IEnumPins;
|
|
68 extern GUID IID_IEnumMediaTypes;
|
|
69 extern GUID IID_IMemInputPin;
|
|
70 extern GUID IID_IMemAllocator;
|
|
71 extern GUID IID_IMediaSample;
|
|
72 extern GUID IID_DivxHidden;
|
|
73 extern GUID IID_Iv50Hidden;
|
|
74 extern GUID CLSID_DivxDecompressorCF;
|
3056
|
75 extern GUID IID_IDivxFilterInterface;
|
168
|
76 extern GUID CLSID_IV50_Decoder;
|
|
77 extern GUID CLSID_MemoryAllocator;
|
|
78 extern GUID MEDIATYPE_Video;
|
|
79 extern GUID GUID_NULL;
|
|
80 extern GUID FORMAT_VideoInfo;
|
|
81 extern GUID MEDIASUBTYPE_RGB565;
|
|
82 extern GUID MEDIASUBTYPE_RGB555;
|
|
83 extern GUID MEDIASUBTYPE_RGB24;
|
|
84 extern GUID MEDIASUBTYPE_RGB32;
|
|
85 extern GUID MEDIASUBTYPE_YUYV;
|
|
86 extern GUID MEDIASUBTYPE_IYUV;
|
|
87 extern GUID MEDIASUBTYPE_YVU9;
|
|
88 extern GUID MEDIASUBTYPE_Y411;
|
|
89 extern GUID MEDIASUBTYPE_Y41P;
|
|
90 extern GUID MEDIASUBTYPE_YUY2;
|
|
91 extern GUID MEDIASUBTYPE_YVYU;
|
|
92 extern GUID MEDIASUBTYPE_UYVY;
|
|
93 extern GUID MEDIASUBTYPE_Y211;
|
|
94 extern GUID MEDIASUBTYPE_YV12;
|
|
95
|
|
96 #endif
|