annotate loader/qtx/qtxsdk/components.h @ 33841:25667edae85c

cleanup: adjust printf format strings to match parameter types This eliminates a bunch of related compiler warnings.
author diego
date Wed, 27 Jul 2011 13:40:06 +0000
parents 77ce62f13d42
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26045
a8ea87c71d18 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25587
diff changeset
1 #ifndef MPLAYER_COMPONENTS_H
a8ea87c71d18 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25587
diff changeset
2 #define MPLAYER_COMPONENTS_H
25553
6ac1ece1f9fe Add multiple inclusion guards to all header files that lack them.
diego
parents: 13809
diff changeset
3
25587
938ad61247d5 Add missing #include so that the header works standalone.
diego
parents: 25553
diff changeset
4 #include <inttypes.h>
938ad61247d5 Add missing #include so that the header works standalone.
diego
parents: 25553
diff changeset
5
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
6 // Basic types:
e331fefb520e some more...
arpi
parents: 2797
diff changeset
7
e331fefb520e some more...
arpi
parents: 2797
diff changeset
8 typedef char * Ptr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
9 typedef Ptr * Handle;
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
10 typedef int32_t Size;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
11 typedef unsigned char Boolean;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
12 typedef unsigned char Str31[32];
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
13 typedef int32_t Fixed;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
14
30812
4c3685b029f7 Fix QuickTime emulated OSErr type.
sesse
parents: 29263
diff changeset
15 typedef int16_t OSErr;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
16 typedef int OSType;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
17
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
18 typedef int32_t ComponentResult;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
19 typedef unsigned char UInt8;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
20 typedef signed char SInt8;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
21 typedef unsigned short UInt16;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
22 typedef signed short SInt16;
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
23 typedef uint32_t UInt32;
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
24 typedef int32_t SInt32;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
25
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
26 #define FOUR_CHAR_CODE(a,b,c,d) ((uint32_t)(a)<<24 | (uint32_t)(b)<<16 | (uint32_t)(c)<<8 | (uint32_t)(d)) /* otherwise compiler will complain about values with high bit set */
2501
alex
parents:
diff changeset
27
2797
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
28 // codec private shit:
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
29 typedef void *GlobalsPtr;
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
30 typedef void **Globals;
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
31
30857
77ce62f13d42 Use the high-level QuickTime decoding APIs (DecompressSequenceFrameS and
sesse
parents: 30823
diff changeset
32 enum {
77ce62f13d42 Use the high-level QuickTime decoding APIs (DecompressSequenceFrameS and
sesse
parents: 30823
diff changeset
33 kInitializeQTMLNoSoundFlag = (1L << 0),
77ce62f13d42 Use the high-level QuickTime decoding APIs (DecompressSequenceFrameS and
sesse
parents: 30823
diff changeset
34 kInitializeQTMLUseGDIFlag = (1L << 1),
77ce62f13d42 Use the high-level QuickTime decoding APIs (DecompressSequenceFrameS and
sesse
parents: 30823
diff changeset
35 kInitializeQTMLDisableDirectSound = (1L << 2),
77ce62f13d42 Use the high-level QuickTime decoding APIs (DecompressSequenceFrameS and
sesse
parents: 30823
diff changeset
36 kInitializeQTMLUseExclusiveFullScreenModeFlag = (1L << 3),
77ce62f13d42 Use the high-level QuickTime decoding APIs (DecompressSequenceFrameS and
sesse
parents: 30823
diff changeset
37 kInitializeQTMLDisableDDClippers = (1L << 4)
77ce62f13d42 Use the high-level QuickTime decoding APIs (DecompressSequenceFrameS and
sesse
parents: 30823
diff changeset
38 };
77ce62f13d42 Use the high-level QuickTime decoding APIs (DecompressSequenceFrameS and
sesse
parents: 30823
diff changeset
39
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
40 //==================== COMPONENTS ===========================
2797
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
41
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
42 struct __attribute__((__packed__)) ComponentParameters {
2797
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
43 UInt8 flags; /* call modifiers: sync/async, deferred, immed, etc */
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
44 UInt8 paramSize; /* size in bytes of actual parameters passed to this call */
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
45 short what; /* routine selector, negative for Component management calls */
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
46 int32_t params[1]; /* actual parameters for the indicated routine */
2797
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
47 };
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
48 typedef struct ComponentParameters ComponentParameters;
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
49
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
50
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
51 struct __attribute__((__packed__)) ComponentDescription {
2797
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
52 OSType componentType; /* A unique 4-byte code indentifying the command set */
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
53 OSType componentSubType; /* Particular flavor of this instance */
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
54 OSType componentManufacturer; /* Vendor indentification */
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
55 uint32_t componentFlags; /* 8 each for Component,Type,SubType,Manuf/revision */
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
56 uint32_t componentFlagsMask; /* Mask for specifying which flags to consider in search, zero during registration */
2797
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
57 };
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
58 typedef struct ComponentDescription ComponentDescription;
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
59
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
60
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
61 struct __attribute__((__packed__)) ResourceSpec {
2797
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
62 OSType resType; /* 4-byte code */
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
63 short resID; /* */
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
64 };
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
65 typedef struct ResourceSpec ResourceSpec;
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
66
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
67
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
68 struct __attribute__((__packed__)) ComponentResource {
2797
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
69 ComponentDescription cd; /* Registration parameters */
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
70 ResourceSpec component; /* resource where Component code is found */
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
71 ResourceSpec componentName; /* name string resource */
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
72 ResourceSpec componentInfo; /* info string resource */
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
73 ResourceSpec componentIcon; /* icon resource */
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
74 };
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
75 typedef struct ComponentResource ComponentResource;
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
76 typedef ComponentResource * ComponentResourcePtr;
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
77 typedef ComponentResourcePtr * ComponentResourceHandle;
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
78
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
79
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
80 struct __attribute__((__packed__)) ComponentRecord {
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
81 int32_t data[1];
2797
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
82 };
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
83 typedef struct ComponentRecord ComponentRecord;
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
84 typedef ComponentRecord * Component;
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
85
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
86
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
87 struct __attribute__((__packed__)) ComponentInstanceRecord {
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
88 int32_t data[1];
2797
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
89 };
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
90 typedef struct ComponentInstanceRecord ComponentInstanceRecord;
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
91
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
92 typedef ComponentInstanceRecord * ComponentInstance;
4c9966c2b2ed updated
arpi
parents: 2776
diff changeset
93
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
94 // ========================= QUICKDRAW =========================
e331fefb520e some more...
arpi
parents: 2797
diff changeset
95
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
96 struct __attribute__((__packed__)) Rect {
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
97 short top;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
98 short left;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
99 short bottom;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
100 short right;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
101 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
102 typedef struct Rect Rect;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
103 typedef Rect * RectPtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
104
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
105 struct __attribute__((__packed__)) RGBColor {
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
106 unsigned short red; /*magnitude of red component*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
107 unsigned short green; /*magnitude of green component*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
108 unsigned short blue; /*magnitude of blue component*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
109 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
110 typedef struct RGBColor RGBColor;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
111 typedef RGBColor * RGBColorPtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
112 typedef RGBColorPtr * RGBColorHdl;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
113
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
114 struct __attribute__((__packed__)) ColorSpec {
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
115 short value; /*index or other value*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
116 RGBColor rgb; /*true color*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
117 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
118 typedef struct ColorSpec ColorSpec;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
119 typedef ColorSpec * ColorSpecPtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
120 typedef ColorSpec CSpecArray[1];
e331fefb520e some more...
arpi
parents: 2797
diff changeset
121
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
122 struct __attribute__((__packed__)) ColorTable {
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
123 int32_t ctSeed; /*unique identifier for table*/
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
124 short ctFlags; /*high bit: 0 = PixMap; 1 = device*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
125 short ctSize; /*number of entries in CTTable*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
126 CSpecArray ctTable; /*array [0..0] of ColorSpec*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
127 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
128 typedef struct ColorTable ColorTable;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
129 typedef ColorTable * CTabPtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
130 typedef CTabPtr * CTabHandle;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
131
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
132 struct __attribute__((__packed__)) MatrixRecord {
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
133 Fixed matrix[3][3];
e331fefb520e some more...
arpi
parents: 2797
diff changeset
134 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
135 typedef struct MatrixRecord MatrixRecord;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
136 typedef MatrixRecord * MatrixRecordPtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
137
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
138 typedef int32_t ImageSequence;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
139 typedef OSType CodecType;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
140 typedef unsigned short CodecFlags;
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
141 typedef uint32_t CodecQ;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
142
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
143 struct __attribute__((__packed__)) ImageDescription {
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
144 int32_t idSize; /* total size of ImageDescription including extra data ( CLUTs and other per sequence data ) */
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
145 CodecType cType; /* what kind of codec compressed this data */
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
146 int32_t resvd1; /* reserved for Apple use */
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
147 short resvd2; /* reserved for Apple use */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
148 short dataRefIndex; /* set to zero */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
149 short version; /* which version is this data */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
150 short revisionLevel; /* what version of that codec did this */
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
151 int32_t vendor; /* whose codec compressed this data */
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
152 CodecQ temporalQuality; /* what was the temporal quality factor */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
153 CodecQ spatialQuality; /* what was the spatial quality factor */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
154 short width; /* how many pixels wide is this data */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
155 short height; /* how many pixels high is this data */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
156 Fixed hRes; /* horizontal resolution */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
157 Fixed vRes; /* vertical resolution */
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
158 int32_t dataSize; /* if known, the size of data for this image descriptor */
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
159 short frameCount; /* number of frames this description applies to */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
160 Str31 name; /* name of codec ( in case not installed ) */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
161 short depth; /* what depth is this data (1-32) or ( 33-40 grayscale ) */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
162 short clutID; /* clut id or if 0 clut follows or -1 if no clut */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
163 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
164 typedef struct ImageDescription ImageDescription;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
165 typedef ImageDescription * ImageDescriptionPtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
166 typedef ImageDescriptionPtr * ImageDescriptionHandle;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
167
e331fefb520e some more...
arpi
parents: 2797
diff changeset
168 /* values for PixMap.pixelFormat*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
169 enum {
11412
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
170 k16LE555PixelFormat = FOUR_CHAR_CODE('L','5','5','5'), /* 16 bit LE rgb 555 (PC)*/
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
171 k16LE5551PixelFormat = FOUR_CHAR_CODE('5','5','5','1'), /* 16 bit LE rgb 5551*/
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
172 k16BE565PixelFormat = FOUR_CHAR_CODE('B','5','6','5'), /* 16 bit BE rgb 565*/
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
173 k16LE565PixelFormat = FOUR_CHAR_CODE('L','5','6','5'), /* 16 bit LE rgb 565*/
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
174 k24BGRPixelFormat = FOUR_CHAR_CODE('2','4','B','G'), /* 24 bit bgr */
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
175 k32BGRAPixelFormat = FOUR_CHAR_CODE('B','G','R','A'), /* 32 bit bgra (Matrox)*/
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
176 k32ABGRPixelFormat = FOUR_CHAR_CODE('A','B','G','R'), /* 32 bit abgr */
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
177 k32RGBAPixelFormat = FOUR_CHAR_CODE('R','G','B','A'), /* 32 bit rgba */
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
178 kYUVSPixelFormat = FOUR_CHAR_CODE('y','u','v','s'), /* YUV 4:2:2 byte ordering 16-unsigned = 'YUY2'*/
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
179 kYUVUPixelFormat = FOUR_CHAR_CODE('y','u','v','u'), /* YUV 4:2:2 byte ordering 16-signed*/
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
180 kYVU9PixelFormat = FOUR_CHAR_CODE('Y','V','U','9'), /* YVU9 Planar 9*/
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
181 kYUV411PixelFormat = FOUR_CHAR_CODE('Y','4','1','1'), /* YUV 4:1:1 Interleaved 16*/
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
182 kYVYU422PixelFormat = FOUR_CHAR_CODE('Y','V','Y','U'), /* YVYU 4:2:2 byte ordering 16*/
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
183 kUYVY422PixelFormat = FOUR_CHAR_CODE('U','Y','V','Y'), /* UYVY 4:2:2 byte ordering 16*/
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
184 kYUV211PixelFormat = FOUR_CHAR_CODE('Y','2','1','1'), /* YUV 2:1:1 Packed 8*/
ec3dac7d17a0 Warning fixes (approved by A'rpi).
rathann
parents: 8470
diff changeset
185 k2vuyPixelFormat = FOUR_CHAR_CODE('2','v','u','y') /* UYVY 4:2:2 byte ordering 16*/
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
186 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
187
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
188 struct __attribute__((__packed__)) PixMapExtension {
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
189 int32_t extSize; /*size of struct, duh!*/
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
190 uint32_t pmBits; /*pixmap attributes bitfield*/
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
191 void * pmGD; /*this is a GDHandle*/
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
192 int32_t pmSeed;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
193 Fixed gammaLevel; /*pixmap gammalevel*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
194 Fixed requestedGammaLevel;
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
195 uint32_t reserved2;
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
196 int32_t longRowBytes; /*used when rowBytes > 16382*/
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
197 uint32_t signature;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
198 Handle baseAddrHandle;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
199 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
200 typedef struct PixMapExtension PixMapExtension;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
201
e331fefb520e some more...
arpi
parents: 2797
diff changeset
202 typedef PixMapExtension * PixMapExtPtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
203 typedef PixMapExtPtr * PixMapExtHandle;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
204
e331fefb520e some more...
arpi
parents: 2797
diff changeset
205
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
206 struct __attribute__((__packed__)) PixMap {
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
207 Ptr baseAddr; /*pointer to pixels*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
208 short rowBytes; /*offset to next line*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
209 Rect bounds; /*encloses bitmap*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
210 short pmVersion; /*pixMap version number*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
211 short packType; /*defines packing format*/
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
212 int32_t packSize; /*length of pixel data*/
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
213 Fixed hRes; /*horiz. resolution (ppi)*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
214 Fixed vRes; /*vert. resolution (ppi)*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
215 short pixelType; /*defines pixel type*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
216 short pixelSize; /*# bits in pixel*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
217 short cmpCount; /*# components in pixel*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
218 short cmpSize; /*# bits per component*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
219 OSType pixelFormat; /*fourCharCode representation*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
220 CTabHandle pmTable; /*color map for this pixMap*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
221 PixMapExtHandle pmExt; /*Handle to pixMap extension*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
222 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
223 typedef struct PixMap PixMap;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
224 typedef PixMap * PixMapPtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
225 typedef PixMapPtr * PixMapHandle;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
226
e331fefb520e some more...
arpi
parents: 2797
diff changeset
227
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
228 struct __attribute__((__packed__)) BitMap {
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
229 Ptr baseAddr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
230 short rowBytes;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
231 Rect bounds;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
232 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
233 typedef struct BitMap BitMap;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
234 typedef BitMap * BitMapPtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
235 typedef BitMapPtr * BitMapHandle;
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
236 typedef struct OpaqueRgnHandle* RgnHandle;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
237
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
238 struct Pattern {
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
239 UInt8 pat[8];
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
240 };
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
241 typedef struct Pattern Pattern;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
242 typedef unsigned char Style;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
243 typedef Style StyleField;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
244 struct __attribute__((__packed__)) Point {
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
245 short v;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
246 short h;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
247 };
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
248 typedef struct Point Point;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
249 struct __attribute__((__packed__)) GrafPort {
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
250 short device;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
251 BitMap portBits;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
252 Rect portRect;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
253 RgnHandle visRgn;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
254 RgnHandle clipRgn;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
255 Pattern bkPat;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
256 Pattern fillPat;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
257 Point pnLoc;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
258 Point pnSize;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
259 short pnMode;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
260 Pattern pnPat;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
261 short pnVis;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
262 short txFont;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
263 StyleField txFace; /*StyleField occupies 16-bits, but only first 8-bits are used*/
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
264 UInt8 txFlags; /* QuickTime uses second 8 bits of StyleField for txFlags */
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
265 short txMode;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
266 short txSize;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
267 Fixed spExtra;
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
268 int32_t fgColor;
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
269 int32_t bkColor;
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
270 short colrBit;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
271 short patStretch;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
272 Handle picSave;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
273 Handle rgnSave;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
274 Handle polySave;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
275 /*QDProcsPtr*/void* grafProcs;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
276 };
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
277 typedef struct GrafPort GrafPort;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
278 typedef GrafPort *GWorldPtr;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
279 typedef GWorldPtr *GWorldHandle;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
280 #define anyCodec ((CodecComponent)0)
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
281 enum {
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
282 /* transfer modes */
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
283 srcCopy = 0, /*the 16 transfer modes*/
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
284 srcOr = 1,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
285 srcXor = 2,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
286 srcBic = 3,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
287 notSrcCopy = 4,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
288 notSrcOr = 5,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
289 notSrcXor = 6,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
290 notSrcBic = 7,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
291 patCopy = 8,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
292 patOr = 9,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
293 patXor = 10,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
294 patBic = 11,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
295 notPatCopy = 12,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
296 notPatOr = 13,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
297 notPatXor = 14,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
298 notPatBic = 15, /* Special Text Transfer Mode */
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
299 grayishTextOr = 49,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
300 hilitetransfermode = 50,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
301 hilite = 50, /* Arithmetic transfer modes */
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
302 blend = 32,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
303 addPin = 33,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
304 addOver = 34,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
305 subPin = 35,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
306 addMax = 37,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
307 adMax = 37,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
308 subOver = 38,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
309 adMin = 39,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
310 ditherCopy = 64, /* Transparent mode constant */
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
311 transparent = 36
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
312 };
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
313
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
314 typedef uint32_t GWorldFlags;
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
315
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
316
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
317
e331fefb520e some more...
arpi
parents: 2797
diff changeset
318 // ============================== CODECS ===========================
e331fefb520e some more...
arpi
parents: 2797
diff changeset
319
e331fefb520e some more...
arpi
parents: 2797
diff changeset
320 typedef Component CompressorComponent;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
321 typedef Component DecompressorComponent;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
322 typedef Component CodecComponent;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
323
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
324 enum {
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
325 codecLosslessQuality = 0x00000400,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
326 codecMaxQuality = 0x000003FF,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
327 codecMinQuality = 0x00000000,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
328 codecLowQuality = 0x00000100,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
329 codecNormalQuality = 0x00000200,
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
330 codecHighQuality = 0x00000300
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
331 };
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
332
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
333
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
334
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
335 // callbacks:
e331fefb520e some more...
arpi
parents: 2797
diff changeset
336 typedef void* ImageCodecDrawBandCompleteUPP;
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
337 typedef int64_t ICMProgressProcRecord;
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
338 typedef int64_t ICMCompletionProcRecord;
8470
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
339 typedef ICMCompletionProcRecord* ICMCompletionProcRecordPtr;
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
340 typedef int64_t ICMDataProcRecord;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
341 typedef void* ICMFrameTimePtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
342 typedef void* CDSequenceDataSourcePtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
343 typedef void* ICMFrameTimeInfoPtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
344
e331fefb520e some more...
arpi
parents: 2797
diff changeset
345 // graphics port
e331fefb520e some more...
arpi
parents: 2797
diff changeset
346 typedef struct OpaqueGrafPtr* GrafPtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
347 typedef GrafPtr CGrafPtr;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
348
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
349
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
350 /* codec capabilities flags */
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
351 enum {
8470
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
352 codecCanScale = 1L << 0, // 1
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
353 codecCanMask = 1L << 1, // 2
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
354 codecCanMatte = 1L << 2, // 4
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
355 codecCanTransform = 1L << 3, // 8
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
356 codecCanTransferMode = 1L << 4, // 10
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
357 codecCanCopyPrev = 1L << 5, // 20
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
358 codecCanSpool = 1L << 6, // 40
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
359 codecCanClipVertical = 1L << 7, // 80
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
360 codecCanClipRectangular = 1L << 8, // 100
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
361 codecCanRemapColor = 1L << 9, // 200
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
362 codecCanFastDither = 1L << 10, // 400
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
363 codecCanSrcExtract = 1L << 11, // 800
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
364 codecCanCopyPrevComp = 1L << 12, // 1000
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
365 codecCanAsync = 1L << 13, // 2000
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
366 codecCanMakeMask = 1L << 14, // 4000
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
367 codecCanShift = 1L << 15, // 8000
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
368 codecCanAsyncWhen = 1L << 16, // 10000
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
369 codecCanShieldCursor = 1L << 17, // 20000
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
370 codecCanManagePrevBuffer = 1L << 18, // 40000
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
371 codecHasVolatileBuffer = 1L << 19, // 80000 /* codec requires redraw after window movement */
8470
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
372 codecWantsRegionMask = 1L << 20, // 100000
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
373 codecImageBufferIsOnScreen = 1L << 21, // 200000 /* old def of codec using overlay surface, = ( codecIsDirectToScreenOnly | codecUsesOverlaySurface | codecImageBufferIsOverlaySurface | codecSrcMustBeImageBuffer ) */
8470
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
374 codecWantsDestinationPixels = 1L << 22, // 400000
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
375 codecWantsSpecialScaling = 1L << 23, // 800000
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
376 codecHandlesInputs = 1L << 24, // 1000000
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
377 codecCanDoIndirectSurface = 1L << 25, /* codec can handle indirect surface (GDI) */
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
378 codecIsSequenceSensitive = 1L << 26,
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
379 codecRequiresOffscreen = 1L << 27,
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
380 codecRequiresMaskBits = 1L << 28,
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
381 codecCanRemapResolution = 1L << 29,
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
382 codecIsDirectToScreenOnly = 1L << 30, /* codec can only decompress data to the screen */
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
383 codecCanLockSurface = 1L << 31 /* codec can lock destination surface, icm doesn't lock for you */
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
384 };
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
385
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
386 /* codec capabilities flags2 */
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
387 enum {
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
388 codecUsesOverlaySurface = 1L << 0, /* codec uses overlay surface */
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
389 codecImageBufferIsOverlaySurface = 1L << 1, /* codec image buffer is overlay surface, the bits in the buffer are on the screen */
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
390 codecSrcMustBeImageBuffer = 1L << 2, /* codec can only source data from an image buffer */
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
391 codecImageBufferIsInAGPMemory = 1L << 4, /* codec image buffer is in AGP space, byte writes are OK */
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
392 codecImageBufferIsInPCIMemory = 1L << 5 /* codec image buffer is across a PCI bus; byte writes are bad */
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
393 };
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
394
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
395 /* codec condition flags */
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
396 // FFD = 13 = 8+4+1
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
397 enum {
8470
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
398 codecConditionFirstBand = 1L << 0, // 1
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
399 codecConditionLastBand = 1L << 1, // 2
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
400 codecConditionFirstFrame = 1L << 2, // 4
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
401 codecConditionNewDepth = 1L << 3, // 8
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
402 codecConditionNewTransform = 1L << 4, // 10
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
403 codecConditionNewSrcRect = 1L << 5, // 20
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
404 codecConditionNewMask = 1L << 6, // 40
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
405 codecConditionNewMatte = 1L << 7, // 80
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
406 codecConditionNewTransferMode = 1L << 8, // 100
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
407 codecConditionNewClut = 1L << 9, // 200
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
408 codecConditionNewAccuracy = 1L << 10, // 400
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
409 codecConditionNewDestination = 1L << 11, // 800
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
410 codecConditionFirstScreen = 1L << 12, // 1000
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
411 codecConditionDoCursor = 1L << 13, // 2000
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
412 codecConditionCatchUpDiff = 1L << 14, // 4000
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
413 codecConditionMaskMayBeChanged = 1L << 15, // 8000
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
414 codecConditionToBuffer = 1L << 16, // 10000
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
415 codecConditionCodecChangedMask = 1L << 31 // 20000
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
416 };
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
417
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
418
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
419
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
420 struct __attribute__((__packed__)) CodecCapabilities {
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
421 int32_t flags;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
422 short wantedPixelSize;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
423 short extendWidth;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
424 short extendHeight;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
425 short bandMin;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
426 short bandInc;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
427 short pad;
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
428 uint32_t time;
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
429 int32_t flags2; /* field new in QuickTime 4.0 */
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
430 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
431 typedef struct CodecCapabilities CodecCapabilities;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
432
e331fefb520e some more...
arpi
parents: 2797
diff changeset
433 struct __attribute__((__packed__)) CodecDecompressParams {
e331fefb520e some more...
arpi
parents: 2797
diff changeset
434 ImageSequence sequenceID; /* predecompress,banddecompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
435 ImageDescriptionHandle imageDescription; /* predecompress,banddecompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
436 Ptr data;
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
437 int32_t bufferSize;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
438
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
439 int32_t frameNumber;
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
440 int32_t startLine;
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
441 int32_t stopLine;
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
442 int32_t conditionFlags;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
443
8470
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
444 CodecFlags callerFlags; // short
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
445 CodecCapabilities * capabilities; /* predecompress,banddecompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
446 ICMProgressProcRecord progressProcRecord;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
447 ICMCompletionProcRecord completionProcRecord;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
448
e331fefb520e some more...
arpi
parents: 2797
diff changeset
449 ICMDataProcRecord dataProcRecord;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
450 CGrafPtr port; /* predecompress,banddecompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
451 PixMap dstPixMap; /* predecompress,banddecompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
452 BitMapPtr maskBits;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
453 PixMapPtr mattePixMap;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
454 Rect srcRect; /* predecompress,banddecompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
455 MatrixRecord * matrix; /* predecompress,banddecompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
456 CodecQ accuracy; /* predecompress,banddecompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
457 short transferMode; /* predecompress,banddecompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
458 ICMFrameTimePtr frameTime; /* banddecompress */
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
459 int32_t reserved[1];
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
460
e331fefb520e some more...
arpi
parents: 2797
diff changeset
461 /* The following fields only exist for QuickTime 2.0 and greater */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
462 SInt8 matrixFlags; /* high bit set if 2x resize */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
463 SInt8 matrixType;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
464 Rect dstRect; /* only valid for simple transforms */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
465
e331fefb520e some more...
arpi
parents: 2797
diff changeset
466 /* The following fields only exist for QuickTime 2.1 and greater */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
467 UInt16 majorSourceChangeSeed;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
468 UInt16 minorSourceChangeSeed;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
469 CDSequenceDataSourcePtr sourceData;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
470
e331fefb520e some more...
arpi
parents: 2797
diff changeset
471 RgnHandle maskRegion;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
472
e331fefb520e some more...
arpi
parents: 2797
diff changeset
473 /* The following fields only exist for QuickTime 2.5 and greater */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
474 OSType ** wantedDestinationPixelTypes; /* Handle to 0-terminated list of OSTypes */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
475
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
476 int32_t screenFloodMethod;
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
477 int32_t screenFloodValue;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
478 short preferredOffscreenPixelSize;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
479
e331fefb520e some more...
arpi
parents: 2797
diff changeset
480 /* The following fields only exist for QuickTime 3.0 and greater */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
481 ICMFrameTimeInfoPtr syncFrameTime; /* banddecompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
482 Boolean needUpdateOnTimeChange; /* banddecompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
483 Boolean enableBlackLining;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
484 Boolean needUpdateOnSourceChange; /* band decompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
485 Boolean pad;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
486
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
487 int32_t unused;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
488
e331fefb520e some more...
arpi
parents: 2797
diff changeset
489 CGrafPtr finalDestinationPort;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
490
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
491 int32_t requestedBufferWidth; /* must set codecWantsSpecialScaling to indicate this field is valid*/
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
492 int32_t requestedBufferHeight; /* must set codecWantsSpecialScaling to indicate this field is valid*/
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
493
e331fefb520e some more...
arpi
parents: 2797
diff changeset
494 /* The following fields only exist for QuickTime 4.0 and greater */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
495 Rect displayableAreaOfRequestedBuffer; /* set in predecompress*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
496 Boolean requestedSingleField;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
497 Boolean needUpdateOnNextIdle;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
498 Boolean pad2[2];
e331fefb520e some more...
arpi
parents: 2797
diff changeset
499 Fixed bufferGammaLevel;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
500
e331fefb520e some more...
arpi
parents: 2797
diff changeset
501 /* The following fields only exist for QuickTime 5.0 and greater */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
502 UInt32 taskWeight; /* preferred weight for MP tasks implementing this operation*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
503 OSType taskName; /* preferred name (type) for MP tasks implementing this operation*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
504 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
505 typedef struct CodecDecompressParams CodecDecompressParams;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
506
e331fefb520e some more...
arpi
parents: 2797
diff changeset
507
e331fefb520e some more...
arpi
parents: 2797
diff changeset
508
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
509 struct __attribute__((__packed__)) ImageSubCodecDecompressCapabilities {
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
510 int32_t recordSize; /* sizeof(ImageSubCodecDecompressCapabilities)*/
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
511 int32_t decompressRecordSize; /* size of your codec's decompress record*/
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
512 Boolean canAsync; /* default true*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
513 UInt8 pad0;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
514
e331fefb520e some more...
arpi
parents: 2797
diff changeset
515 /* The following fields only exist for QuickTime 4.0 and greater */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
516 UInt16 suggestedQueueSize;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
517 Boolean canProvideTrigger;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
518
e331fefb520e some more...
arpi
parents: 2797
diff changeset
519 /* The following fields only exist for QuickTime 5.0 and greater */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
520 Boolean subCodecFlushesScreen; /* only used on Mac OS X*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
521 Boolean subCodecCallsDrawBandComplete;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
522 UInt8 pad2[1];
e331fefb520e some more...
arpi
parents: 2797
diff changeset
523
e331fefb520e some more...
arpi
parents: 2797
diff changeset
524 /* The following fields only exist for QuickTime 5.1 and greater */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
525 Boolean isChildCodec; /* set by base codec before calling Initialize*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
526 UInt8 pad3[3];
e331fefb520e some more...
arpi
parents: 2797
diff changeset
527 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
528 typedef struct ImageSubCodecDecompressCapabilities ImageSubCodecDecompressCapabilities;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
529
e331fefb520e some more...
arpi
parents: 2797
diff changeset
530
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
531 struct __attribute__((__packed__)) ImageSubCodecDecompressRecord {
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
532 Ptr baseAddr;
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
533 int32_t rowBytes;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
534 Ptr codecData;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
535 ICMProgressProcRecord progressProcRecord;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
536 ICMDataProcRecord dataProcRecord;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
537 void * userDecompressRecord; /* pointer to codec-specific per-band data*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
538 UInt8 frameType;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
539 Boolean inhibitMP; /* set this in BeginBand to tell the base decompressor not to call DrawBand from an MP task for this frame. (Only has any effect for MP-capable subcodecs. New in QuickTime 5.0.)*/
e331fefb520e some more...
arpi
parents: 2797
diff changeset
540 UInt8 pad[2];
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
541 int32_t priv[2];
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
542
e331fefb520e some more...
arpi
parents: 2797
diff changeset
543 /* The following fields only exist for QuickTime 5.0 and greater */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
544 ImageCodecDrawBandCompleteUPP drawBandCompleteUPP; /* only used if subcodec set subCodecCallsDrawBandComplete; if drawBandCompleteUPP is non-nil, codec must call it when a frame is finished, but may return from DrawBand before the frame is finished. */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
545 void * drawBandCompleteRefCon; /* Note: do not call drawBandCompleteUPP directly from a hardware interrupt; instead, use DTInstall to run a function at deferred task time, and call drawBandCompleteUPP from that. */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
546 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
547 typedef struct ImageSubCodecDecompressRecord ImageSubCodecDecompressRecord;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
548
e331fefb520e some more...
arpi
parents: 2797
diff changeset
549
e331fefb520e some more...
arpi
parents: 2797
diff changeset
550 /* These are the bits that are set in the Component flags, and also in the codecInfo struct. */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
551 enum {
e331fefb520e some more...
arpi
parents: 2797
diff changeset
552 codecInfoDoes1 = (1L << 0), /* codec can work with 1-bit pixels */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
553 codecInfoDoes2 = (1L << 1), /* codec can work with 2-bit pixels */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
554 codecInfoDoes4 = (1L << 2), /* codec can work with 4-bit pixels */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
555 codecInfoDoes8 = (1L << 3), /* codec can work with 8-bit pixels */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
556 codecInfoDoes16 = (1L << 4), /* codec can work with 16-bit pixels */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
557 codecInfoDoes32 = (1L << 5), /* codec can work with 32-bit pixels */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
558 codecInfoDoesDither = (1L << 6), /* codec can do ditherMode */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
559 codecInfoDoesStretch = (1L << 7), /* codec can stretch to arbitrary sizes */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
560 codecInfoDoesShrink = (1L << 8), /* codec can shrink to arbitrary sizes */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
561 codecInfoDoesMask = (1L << 9), /* codec can mask to clipping regions */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
562 codecInfoDoesTemporal = (1L << 10), /* codec can handle temporal redundancy */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
563 codecInfoDoesDouble = (1L << 11), /* codec can stretch to double size exactly */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
564 codecInfoDoesQuad = (1L << 12), /* codec can stretch to quadruple size exactly */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
565 codecInfoDoesHalf = (1L << 13), /* codec can shrink to half size */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
566 codecInfoDoesQuarter = (1L << 14), /* codec can shrink to quarter size */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
567 codecInfoDoesRotate = (1L << 15), /* codec can rotate on decompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
568 codecInfoDoesHorizFlip = (1L << 16), /* codec can flip horizontally on decompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
569 codecInfoDoesVertFlip = (1L << 17), /* codec can flip vertically on decompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
570 codecInfoHasEffectParameterList = (1L << 18), /* codec implements get effects parameter list call, once was codecInfoDoesSkew */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
571 codecInfoDoesBlend = (1L << 19), /* codec can blend on decompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
572 codecInfoDoesWarp = (1L << 20), /* codec can warp arbitrarily on decompress */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
573 codecInfoDoesRecompress = (1L << 21), /* codec can recompress image without accumulating errors */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
574 codecInfoDoesSpool = (1L << 22), /* codec can spool image data */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
575 codecInfoDoesRateConstrain = (1L << 23) /* codec can data rate constrain */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
576 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
577
e331fefb520e some more...
arpi
parents: 2797
diff changeset
578
e331fefb520e some more...
arpi
parents: 2797
diff changeset
579 enum {
e331fefb520e some more...
arpi
parents: 2797
diff changeset
580 codecInfoDepth1 = (1L << 0), /* compressed data at 1 bpp depth available */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
581 codecInfoDepth2 = (1L << 1), /* compressed data at 2 bpp depth available */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
582 codecInfoDepth4 = (1L << 2), /* compressed data at 4 bpp depth available */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
583 codecInfoDepth8 = (1L << 3), /* compressed data at 8 bpp depth available */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
584 codecInfoDepth16 = (1L << 4), /* compressed data at 16 bpp depth available */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
585 codecInfoDepth32 = (1L << 5), /* compressed data at 32 bpp depth available */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
586 codecInfoDepth24 = (1L << 6), /* compressed data at 24 bpp depth available */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
587 codecInfoDepth33 = (1L << 7), /* compressed data at 1 bpp monochrome depth available */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
588 codecInfoDepth34 = (1L << 8), /* compressed data at 2 bpp grayscale depth available */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
589 codecInfoDepth36 = (1L << 9), /* compressed data at 4 bpp grayscale depth available */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
590 codecInfoDepth40 = (1L << 10), /* compressed data at 8 bpp grayscale depth available */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
591 codecInfoStoresClut = (1L << 11), /* compressed data can have custom cluts */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
592 codecInfoDoesLossless = (1L << 12), /* compressed data can be stored in lossless format */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
593 codecInfoSequenceSensitive = (1L << 13) /* compressed data is sensitive to out of sequence decoding */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
594 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
595
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
596 struct __attribute__((__packed__)) CodecInfo {
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
597 Str31 typeName; /* name of the codec type i.e.: 'Apple Image Compression' */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
598 short version; /* version of the codec data that this codec knows about */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
599 short revisionLevel; /* revision level of this codec i.e: 0x00010001 (1.0.1) */
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
600 int32_t vendor; /* Maker of this codec i.e: 'appl' */
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
601 int32_t decompressFlags; /* codecInfo flags for decompression capabilities */
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
602 int32_t compressFlags; /* codecInfo flags for compression capabilities */
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
603 int32_t formatFlags; /* codecInfo flags for compression format details */
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
604 UInt8 compressionAccuracy; /* measure (1-255) of accuracy of this codec for compress (0 if unknown) */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
605 UInt8 decompressionAccuracy; /* measure (1-255) of accuracy of this codec for decompress (0 if unknown) */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
606 unsigned short compressionSpeed; /* ( millisecs for compressing 320x240 on base mac II) (0 if unknown) */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
607 unsigned short decompressionSpeed; /* ( millisecs for decompressing 320x240 on mac II)(0 if unknown) */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
608 UInt8 compressionLevel; /* measure (1-255) of compression level of this codec (0 if unknown) */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
609 UInt8 resvd; /* pad */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
610 short minimumHeight; /* minimum height of image (block size) */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
611 short minimumWidth; /* minimum width of image (block size) */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
612 short decompressPipelineLatency; /* in milliseconds ( for asynchronous codecs ) */
e331fefb520e some more...
arpi
parents: 2797
diff changeset
613 short compressPipelineLatency; /* in milliseconds ( for asynchronous codecs ) */
13809
a9e2fda933be AMD64 fixes based on patch by Timo Ter¸«£s <timo.teras@iki.fi>
faust3
parents: 11412
diff changeset
614 int32_t privateData;
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
615 };
e331fefb520e some more...
arpi
parents: 2797
diff changeset
616 typedef struct CodecInfo CodecInfo;
e331fefb520e some more...
arpi
parents: 2797
diff changeset
617
8470
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
618 enum {
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
619 codecFlagUseImageBuffer = (1L << 0), /* decompress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
620 codecFlagUseScreenBuffer = (1L << 1), /* decompress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
621 codecFlagUpdatePrevious = (1L << 2), /* compress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
622 codecFlagNoScreenUpdate = (1L << 3), /* decompress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
623 codecFlagWasCompressed = (1L << 4), /* compress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
624 codecFlagDontOffscreen = (1L << 5), /* decompress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
625 codecFlagUpdatePreviousComp = (1L << 6), /* compress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
626 codecFlagForceKeyFrame = (1L << 7), /* compress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
627 codecFlagOnlyScreenUpdate = (1L << 8), /* decompress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
628 codecFlagLiveGrab = (1L << 9), /* compress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
629 codecFlagDiffFrame = (1L << 9), /* decompress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
630 codecFlagDontUseNewImageBuffer = (1L << 10), /* decompress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
631 codecFlagInterlaceUpdate = (1L << 11), /* decompress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
632 codecFlagCatchUpDiff = (1L << 12), /* decompress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
633 codecFlagSupportDisable = (1L << 13), /* decompress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
634 codecFlagReenable = (1L << 14) /* decompress*/
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
635 };
08d7e1718dd0 CRLF->LF
arpi
parents: 8323
diff changeset
636
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
637 static inline void dump_ImageDescription(void* xxx){
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
638 ImageDescription* id=(ImageDescription*)xxx;
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
639 unsigned char* x;
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
640 int i;
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
641
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
642 for(i=0;i<id->idSize;i++){
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
643 printf(" %02X",((unsigned char*)id)[i]);
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
644 if((i%16)==15) printf("\n");
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
645 }
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
646 printf("\n");
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
647
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
648
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
649 printf("=============== ImageDescription at %p ==================\n",xxx);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
650 printf("idSize=0x%X fourcc=0x%08X\n",id->idSize,id->cType);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
651 printf("ver=%d rev=%d vendor=0x%08X\n",id->version,id->revisionLevel,id->vendor);
30823
4dfdb57de907 Correct QuickTime dpi output.
sesse
parents: 30812
diff changeset
652 printf("tempQ=%d spatQ=%d dim: %d x %d dpi: %.2f x %.2f depth: %d\n",
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
653 id->temporalQuality,id->spatialQuality,
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
654 id->width, id->height,
30823
4dfdb57de907 Correct QuickTime dpi output.
sesse
parents: 30812
diff changeset
655 id->hRes / 65536.0, id->vRes / 65536.0,
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
656 id->depth);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
657 printf("dataSize=%d frameCount=%d clutID=%d\n",id->dataSize, id->frameCount, id->clutID);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
658 printf("name='%.*s'\n",((char*)(&id->name))[0],((char*)(&id->name))+1);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
659 x=((char*)(&id->clutID))+2;
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
660 if(id->idSize>sizeof(ImageDescription)){
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
661 printf("%02X %02X %02X %02X | %02X %02X %02X %02X | %02X %02X %02X %02X | %02X %02X %02X %02X\n",
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
662 x[0],x[1],x[2],x[3],x[4],x[5],x[6],x[7],x[8],x[9],x[10],x[11],x[12],x[13],x[14],x[15]);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
663 }
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
664 printf("=========================================================\n");
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
665 }
5253
e331fefb520e some more...
arpi
parents: 2797
diff changeset
666
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
667 static inline void dump_Rect(char* title,Rect *r){
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
668 printf("%s: %d;%d - %d;%d\n",title,
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
669 (int)r->top,(int)r->left,(int)r->bottom,(int)r->right);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
670 }
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
671
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
672 static inline void dump_MatrixRecord(char* title, MatrixRecord *m){
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
673 printf("%s: [%d %d %d][%d %d %d][%d %d %d]\n",title,
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
674 m->matrix[0][0],m->matrix[0][1],m->matrix[0][2],
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
675 m->matrix[1][0],m->matrix[1][1],m->matrix[1][2],
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
676 m->matrix[2][0],m->matrix[2][1],m->matrix[2][2]);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
677 }
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
678
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
679 static inline void dump_PixMap(void* xxx){
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
680 PixMap *p=xxx;
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
681 printf("=============== PixMap at %p ==================\n",xxx);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
682 printf("base=%p stride=%d\n",p->baseAddr, p->rowBytes);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
683 dump_Rect("bounds",&p->bounds);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
684 printf("pmVersion=0x%X packType=0x%X\n packSize=0x%X\n",
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
685 p->pmVersion,p->packType, p->packSize);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
686 printf("hRes=0x%X vRes=0x%X pixelType=0x%X pixelSize=0x%X\n",
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
687 p->hRes,p->vRes,p->pixelType,p->pixelSize);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
688 printf("cmpCount=0x%X cmpSize=0x%X pixelFormat=0x%X\n",
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
689 p->cmpCount,p->cmpSize,p->pixelFormat);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
690 printf("pmTable=%p pmExt=%p\n",p->pmTable,p->pmExt);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
691 printf("=========================================================\n");
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
692 }
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
693
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
694 static inline void dump_CodecCapabilities(void* xxx){
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
695 CodecCapabilities* cc=xxx;
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
696 if(!xxx) return;
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
697 printf("=============== CodecCapabilities at %p =================\n",xxx);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
698 printf("flags=0x%X flags2=0x%X\n",cc->flags,cc->flags2);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
699 printf("wantedPixelSize=%d extendWidth=%d extendHeight=%d band=%d+%d\n",
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
700 cc->wantedPixelSize,cc->extendWidth,cc->extendHeight,
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
701 cc->bandMin,cc->bandInc);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
702 printf("pad=0x%X time=0x%X\n",cc->pad,cc->time);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
703 printf("=========================================================\n");
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
704 }
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
705
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
706 static inline void dump_CodecDecompressParams(void* xxx){
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
707 CodecDecompressParams* cd=xxx;
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
708 ImageDescription **idh;
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
709 int i;
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
710 if(!xxx) return;
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
711 printf("=============== CodecDecompressParams at %p ==================\n",xxx);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
712 printf("sequenceID=%d\n",cd->sequenceID);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
713 idh=cd->imageDescription;
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
714 if(idh && idh[0]) dump_ImageDescription(idh[0]);
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 26045
diff changeset
715
8266
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
716 for(i=0;i<sizeof(CodecDecompressParams);i++){
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
717 printf(" %02X",((unsigned char*)cd)[i]);
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
718 if((i%16)==15) printf("\n");
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
719 }
2de1fa441839 fixes, updates
arpi
parents: 5334
diff changeset
720 printf("\n");
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 26045
diff changeset
721
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
722 printf("data=%p size=%d\n",cd->data,cd->bufferSize);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
723 printf("frameno=%d lines: %d .. %d condflags=0x%X callerflags=0x%X\n",
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
724 cd->frameNumber, cd->startLine, cd->stopLine, cd->conditionFlags,cd->callerFlags);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
725 // printf("maskBits=%p mattePixMap=%p\n",
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
726 // cd->maskBits,cd->mattePixMap);
8323
75a09ccb1a18 dump more!
arpi
parents: 8266
diff changeset
727 dump_PixMap(&cd->dstPixMap);
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
728 // if(cd->mattePixMap) dump_PixMap(cd->mattePixMap);
8323
75a09ccb1a18 dump more!
arpi
parents: 8266
diff changeset
729 if(cd->matrix) dump_MatrixRecord("matrix",cd->matrix);
75a09ccb1a18 dump more!
arpi
parents: 8266
diff changeset
730 if(cd->capabilities) dump_CodecCapabilities(cd->capabilities);
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
731 printf("accuracy=%d transferMode=%d matrixFlags=0x%X matrixType=%d\n",
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
732 (int)cd->accuracy, (int)cd->transferMode, (int)cd->matrixFlags, (int)cd->matrixType);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
733 printf("srcrect: %d;%d - %d;%d\n",cd->srcRect.top,cd->srcRect.left,cd->srcRect.bottom,cd->srcRect.right);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
734 printf("dstrect: %d;%d - %d;%d\n",cd->dstRect.top,cd->dstRect.left,cd->dstRect.bottom,cd->dstRect.right);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
735 printf("wantedDestinationPixelTypes=%p\n",cd->wantedDestinationPixelTypes);
8323
75a09ccb1a18 dump more!
arpi
parents: 8266
diff changeset
736 if(cd->wantedDestinationPixelTypes){
75a09ccb1a18 dump more!
arpi
parents: 8266
diff changeset
737 unsigned int* p=cd->wantedDestinationPixelTypes;
75a09ccb1a18 dump more!
arpi
parents: 8266
diff changeset
738 while(p[0]){
33841
25667edae85c cleanup: adjust printf format strings to match parameter types
diego
parents: 30857
diff changeset
739 printf(" 0x%08X %p\n",p[0],&p[0]);
8323
75a09ccb1a18 dump more!
arpi
parents: 8266
diff changeset
740 ++p;
75a09ccb1a18 dump more!
arpi
parents: 8266
diff changeset
741 }
75a09ccb1a18 dump more!
arpi
parents: 8266
diff changeset
742 }
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
743 printf("screenFloodMethod=%d value=%d preferredOffscreenPixelSize=%d\n",
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
744 cd->screenFloodMethod, cd->screenFloodValue, cd->preferredOffscreenPixelSize);
33841
25667edae85c cleanup: adjust printf format strings to match parameter types
diego
parents: 30857
diff changeset
745 printf("callbacks: progress=%"PRId64" compl=%"PRId64" data=%"PRId64" ftime=%p srcdata=%p sync=%p\n",
5334
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
746 cd->progressProcRecord, cd->completionProcRecord,
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
747 cd->dataProcRecord, cd->frameTime, cd->sourceData, cd->syncFrameTime);
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
748 // printf("\n");
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
749
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
750 printf("=========================================================\n");
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
751
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
752
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
753 }
2cb0e0e83e95 dump stuff
arpi
parents: 5253
diff changeset
754
26045
a8ea87c71d18 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25587
diff changeset
755 #endif /* MPLAYER_COMPONENTS_H */