summaryrefslogtreecommitdiffstats
path: root/Lib/plat-irix5/CL.py
blob: c64f0887bfda02a802993972ce8bfd6e20dab5d1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
#
# cl.h - Compression Library typedefs and prototypes
#
#   02/18/92	Original Version by Brian Knittel
#

#
# originalFormat parameter values
#
MAX_NUMBER_OF_ORIGINAL_FORMATS = (32)

# Audio
MONO = (0)
STEREO_INTERLEAVED = (1)

# Video 
# YUV is defined to be the same thing as YCrCb (luma and two chroma components).
# 422 is appended to YUV (or YCrCb) if the chroma is sub-sampled by 2 
#	horizontally, packed as U Y1 V Y2 (byte order).
# 422HC is appended to YUV (or YCrCb) if the chroma is sub-sampled by 2 
#	vertically in addition to horizontally, and is packed the same as 
#	422 except that U & V are not valid on the second line.
#
RGB = (0)
RGBX = (1)
RGBA = (2)
RGB332 = (3)

GRAYSCALE = (4)
Y = (4)
YUV = (5)	
YCbCr = (5)	
YUV422 = (6)	# 4:2:2 sampling
YCbCr422 = (6)	# 4:2:2 sampling
YUV422HC = (7)	# 4:1:1 sampling
YCbCr422HC = (7)	# 4:1:1 sampling

MAX_NUMBER_OF_AUDIO_ALGORITHMS = (32)
MAX_NUMBER_OF_VIDEO_ALGORITHMS = (32)

#
# "compressionScheme" argument values
#
UNCOMPRESSED_AUDIO = (0)
G711_ULAW = (1)
ULAW = (1)
G711_ALAW = (2)
ALAW = (2)
G722 = (3)
    
UNCOMPRESSED = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 0)
UNCOMPRESSED_VIDEO = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 0)
RLE = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 1)
JPEG = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 2)
MPEG_VIDEO = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 3)
MVC1 = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 4)
RTR = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 5)
RTR1 = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 5)

#
# Parameters
#
MAX_NUMBER_OF_PARAMS = (256)
# Default Parameters
IMAGE_WIDTH = (0)
IMAGE_HEIGHT = (1) 
ORIGINAL_FORMAT = (2)
INTERNAL_FORMAT = (3)
COMPONENTS = (4)
BITS_PER_COMPONENT = (5)
FRAME_RATE = (6)
COMPRESSION_RATIO = (7)
EXACT_COMPRESSION_RATIO = (8)
FRAME_BUFFER_SIZE = (9) 
COMPRESSED_BUFFER_SIZE = (10)
BLOCK_SIZE = (11)
PREROLL = (12)
UNIQUE = (13)
FRAME_TYPE = (14)
OVERWRITE_MODE = (15)
NUMBER_OF_PARAMS = (16)

# JPEG Specific Parameters
QUALITY_FACTOR = (NUMBER_OF_PARAMS + 0)

# MPEG Specific Parameters
SPEED = (NUMBER_OF_PARAMS + 0)
ACTUAL_FRAME_INDEX = (NUMBER_OF_PARAMS + 1)

# RTR Specific Parameters
QUALITY_LEVEL = (NUMBER_OF_PARAMS + 0)

# #define	clTypeIsFloat(v)	(*(float *)&(v))
# #define	clTypeIsLong(v)		(*(long *)&(v))
# 
# RATIO_1 = (65536.0)
# #define clFloatToRatio(f)	((long)((float)(f) * RATIO_1))
# #define clRatioToFloat(f)	((float)(f) / RATIO_1)
# RATIO_SHIFT = (16)
# #define clRatioMul(m, r)	((m) * (r))
# #define clRatioToLong(r)	((r) >> RATIO_SHIFT)
# #define clLongToRatio(r)	((r) << RATIO_SHIFT)

#
# Parameter value types
#
ENUM_VALUE = (0) # only certain constant values are valid
RANGE_VALUE = (1) # any value in a given range is valid
FLOATING_ENUM_VALUE = (2) # only certain constant floating point values are valid
FLOATING_RANGE_VALUE = (3) # any value in a given floating point range is valid
POINTER = (4) # any legal pointer is valid

#
# Algorithm types
#
AUDIO = (0)
VIDEO = (1)

#
# Algorithm Functionality
#
DECOMPRESSOR = (1)
COMPRESSOR = (2)
CODEC = (3)

#
# Buffer types
#
NONE = (0)
FRAME = (1)
DATA = (2)

#
# error codes
#
BAD_NOT_IMPLEMENTED = ( -1) # not impimented yet
BAD_NO_BUFFERSPACE = ( -2) # no space for internal buffers
BAD_BUFFER_NULL = ( -3) # null buffer pointer
BAD_COUNT_NEG = ( -4) # negative count
BAD_PVBUFFER = ( -5) # param/val buffer doesn't make sense
BAD_BUFFERLENGTH_NEG = ( -6) # negative buffer length
BAD_BUFFERLENGTH_ODD = ( -7) # odd length parameter/value buffer
BAD_PARAM = ( -8) # invalid parameter
BAD_COMPRESSION_SCHEME = ( -9) # compression scheme parameter invalid
BAD_COMPRESSOR_HANDLE = (-10) # compression handle parameter invalid
BAD_COMPRESSOR_HANDLE_POINTER = (-11) # compression handle pointer invalid
BAD_BUFFER_HANDLE = (-12) # callback function invalid
BAD_ALGORITHM_INFO = (-13) # algorithm info invalid
BAD_CL_BAD_WIDTH_OR_HEIGHT = (-14) # compressor width or height invalid
BAD_POINTER_FROM_CALLBACK_FUNCTION = (-15) # pointer from callback invalid
JPEG_ERROR = (-16) # error from libjpeg
NO_SEMAPHORE = (-17) # could not get semaphore
BAD_WIDTH_OR_HEIGHT = (-18) # width or height invalid
BAD_FRAME_COUNT = (-19) # frame count invalid
BAD_FRAME_INDEX = (-20) # frame index invalid
BAD_FRAME_BUFFER = (-21) # frame buffer pointer invalid
BAD_FRAME_SIZE = (-22) # frame size invalid
BAD_DATA_BUFFER = (-23) # data buffer pointer invalid
BAD_DATA_SIZE = (-24) # data buffer size invalid
BAD_TOTAL_NUMBER_OF_FRAMES = (-25) # total number of frames invalid
BAD_IMAGE_FORMAT = (-26) # image format invalid
BAD_BITS_PER_COMPONENT = (-27) # bits per component invalid
BAD_FRAME_RATE = (-28) # frame rate invalid
BAD_INSUFFICIENT_DATA_FROM_CALLBACK_FUNCTION = (-29) # insufficient data from callback invalid
PARAM_OUT_OF_RANGE = (-30) # parameter out of range
ADDED_ALGORITHM_ERROR = (-31) # added algorithm had a unique error
BAD_ALGORITHM_TYPE = (-32) # bad algorithm type
BAD_ALGORITHM_NAME = (-33) # bad algorithm name
BAD_FRAME_INDEXING = (-34) # bad frame indexing
BAD_BUFFERING = (-35) # bad buffering calls
BUFFER_NOT_CREATED = (-36) # buffer not created
BAD_BUFFER_EXISTS = (-37) # buffer already created