9 #if defined(CL_JPEG_SOFTWARE) && !defined(CL_JPEG_COSMO)
10 #include <dmedia/cl_cosmo.h>
16 int ob_isCompressor
; /* Compressor or Decompressor */
17 CL_Handle ob_compressorHdl
;
22 static PyObject
*ClError
; /* exception cl.error */
24 static int error_handler_called
= 0;
27 * We want to use the function prototypes that are available in the C
28 * compiler on the SGI. Because of that, we need to declare the first
29 * argument of the compressor and decompressor methods as "object *",
30 * even though they are really "clobject *". Therefore we cast the
31 * argument to the proper type using this macro.
33 #define SELF ((clobject *) self)
35 /********************************************************************
37 ********************************************************************/
39 cl_ErrorHandler(CL_Handle handle
, int code
, const char *fmt
, ...)
42 char errbuf
[BUFSIZ
]; /* hopefully big enough */
45 if (PyErr_Occurred()) /* don't change existing error */
47 error_handler_called
= 1;
49 vsprintf(errbuf
, fmt
, ap
);
51 p
= &errbuf
[strlen(errbuf
) - 1]; /* swat the line feed */
54 PyErr_SetString(ClError
, errbuf
);
58 * This assumes that params are always in the range 0 to some maximum.
61 param_type_is_float(clobject
*self
, int param
)
65 if (self
->ob_paramtypes
== NULL
) {
66 error_handler_called
= 0;
67 bufferlength
= clQueryParams(self
->ob_compressorHdl
, 0, 0);
68 if (error_handler_called
)
71 self
->ob_paramtypes
= PyMem_NEW(int, bufferlength
);
72 if (self
->ob_paramtypes
== NULL
)
74 self
->ob_nparams
= bufferlength
/ 2;
76 (void) clQueryParams(self
->ob_compressorHdl
,
77 self
->ob_paramtypes
, bufferlength
);
78 if (error_handler_called
) {
79 PyMem_DEL(self
->ob_paramtypes
);
80 self
->ob_paramtypes
= NULL
;
85 if (param
< 0 || param
>= self
->ob_nparams
)
88 if (self
->ob_paramtypes
[param
*2 + 1] == CL_FLOATING_ENUM_VALUE
||
89 self
->ob_paramtypes
[param
*2 + 1] == CL_FLOATING_RANGE_VALUE
)
95 /********************************************************************
96 Single image compression/decompression.
97 ********************************************************************/
99 cl_CompressImage(PyObject
*self
, PyObject
*args
)
101 int compressionScheme
, width
, height
, originalFormat
;
102 float compressionRatio
;
103 int frameBufferSize
, compressedBufferSize
;
105 PyObject
*compressedBuffer
;
107 if (!PyArg_ParseTuple(args
, "iiiifs#", &compressionScheme
,
109 &originalFormat
, &compressionRatio
, &frameBuffer
,
114 compressedBuffer
= PyString_FromStringAndSize(NULL
, frameBufferSize
);
115 if (compressedBuffer
== NULL
)
118 compressedBufferSize
= frameBufferSize
;
119 error_handler_called
= 0;
120 if (clCompressImage(compressionScheme
, width
, height
, originalFormat
,
121 compressionRatio
, (void *) frameBuffer
,
122 &compressedBufferSize
,
123 (void *) PyString_AsString(compressedBuffer
))
124 == FAILURE
|| error_handler_called
) {
125 Py_DECREF(compressedBuffer
);
126 if (!error_handler_called
)
127 PyErr_SetString(ClError
, "clCompressImage failed");
131 if (compressedBufferSize
> frameBufferSize
) {
132 frameBufferSize
= compressedBufferSize
;
133 Py_DECREF(compressedBuffer
);
137 if (compressedBufferSize
< frameBufferSize
)
138 _PyString_Resize(&compressedBuffer
, compressedBufferSize
);
140 return compressedBuffer
;
144 cl_DecompressImage(PyObject
*self
, PyObject
*args
)
146 int compressionScheme
, width
, height
, originalFormat
;
147 char *compressedBuffer
;
148 int compressedBufferSize
, frameBufferSize
;
149 PyObject
*frameBuffer
;
151 if (!PyArg_ParseTuple(args
, "iiiis#", &compressionScheme
, &width
, &height
,
152 &originalFormat
, &compressedBuffer
,
153 &compressedBufferSize
))
156 frameBufferSize
= width
* height
* CL_BytesPerPixel(originalFormat
);
158 frameBuffer
= PyString_FromStringAndSize(NULL
, frameBufferSize
);
159 if (frameBuffer
== NULL
)
162 error_handler_called
= 0;
163 if (clDecompressImage(compressionScheme
, width
, height
, originalFormat
,
164 compressedBufferSize
, compressedBuffer
,
165 (void *) PyString_AsString(frameBuffer
))
166 == FAILURE
|| error_handler_called
) {
167 Py_DECREF(frameBuffer
);
168 if (!error_handler_called
)
169 PyErr_SetString(ClError
, "clDecompressImage failed");
176 /********************************************************************
177 Sequential compression/decompression.
178 ********************************************************************/
179 #define CheckCompressor(self) if ((self)->ob_compressorHdl == NULL) { \
180 PyErr_SetString(PyExc_RuntimeError, "(de)compressor not active"); \
185 doClose(clobject
*self
, int (*close_func
)(CL_Handle
))
187 CheckCompressor(self
);
189 error_handler_called
= 0;
190 if ((*close_func
)(self
->ob_compressorHdl
) == FAILURE
||
191 error_handler_called
) {
192 if (!error_handler_called
)
193 PyErr_SetString(ClError
, "close failed");
197 self
->ob_compressorHdl
= NULL
;
199 if (self
->ob_paramtypes
)
200 PyMem_DEL(self
->ob_paramtypes
);
201 self
->ob_paramtypes
= NULL
;
208 clm_CloseCompressor(PyObject
*self
)
210 return doClose(SELF
, clCloseCompressor
);
214 clm_CloseDecompressor(PyObject
*self
)
216 return doClose(SELF
, clCloseDecompressor
);
220 clm_Compress(PyObject
*self
, PyObject
*args
)
223 int frameBufferSize
, compressedBufferSize
, size
;
227 CheckCompressor(SELF
);
229 if (!PyArg_Parse(args
, "(is#)", &numberOfFrames
,
230 &frameBuffer
, &frameBufferSize
))
233 error_handler_called
= 0;
234 size
= clGetParam(SELF
->ob_compressorHdl
, CL_COMPRESSED_BUFFER_SIZE
);
235 compressedBufferSize
= size
;
236 if (error_handler_called
)
239 data
= PyString_FromStringAndSize(NULL
, size
);
243 error_handler_called
= 0;
244 if (clCompress(SELF
->ob_compressorHdl
, numberOfFrames
,
245 (void *) frameBuffer
, &compressedBufferSize
,
246 (void *) PyString_AsString(data
)) == FAILURE
||
247 error_handler_called
) {
249 if (!error_handler_called
)
250 PyErr_SetString(ClError
, "compress failed");
254 if (compressedBufferSize
< size
)
255 if (_PyString_Resize(&data
, compressedBufferSize
))
258 if (compressedBufferSize
> size
) {
259 /* we didn't get all "compressed" data */
261 PyErr_SetString(ClError
,
262 "compressed data is more than fitted");
270 clm_Decompress(PyObject
*self
, PyObject
*args
)
274 char *compressedData
;
275 int compressedDataSize
, dataSize
;
277 CheckCompressor(SELF
);
279 if (!PyArg_Parse(args
, "(is#)", &numberOfFrames
, &compressedData
,
280 &compressedDataSize
))
283 error_handler_called
= 0;
284 dataSize
= clGetParam(SELF
->ob_compressorHdl
, CL_FRAME_BUFFER_SIZE
);
285 if (error_handler_called
)
288 data
= PyString_FromStringAndSize(NULL
, dataSize
);
292 error_handler_called
= 0;
293 if (clDecompress(SELF
->ob_compressorHdl
, numberOfFrames
,
294 compressedDataSize
, (void *) compressedData
,
295 (void *) PyString_AsString(data
)) == FAILURE
||
296 error_handler_called
) {
298 if (!error_handler_called
)
299 PyErr_SetString(ClError
, "decompress failed");
307 doParams(clobject
*self
, PyObject
*args
, int (*func
)(CL_Handle
, int *, int),
316 CheckCompressor(self
);
318 if (!PyArg_Parse(args
, "O", &list
))
320 if (!PyList_Check(list
)) {
324 length
= PyList_Size(list
);
325 PVbuffer
= PyMem_NEW(int, length
);
326 if (PVbuffer
== NULL
)
327 return PyErr_NoMemory();
328 for (i
= 0; i
< length
; i
++) {
329 v
= PyList_GetItem(list
, i
);
330 if (PyFloat_Check(v
)) {
331 number
= PyFloat_AsDouble(v
);
332 PVbuffer
[i
] = CL_TypeIsInt(number
);
333 } else if (PyInt_Check(v
)) {
334 PVbuffer
[i
] = PyInt_AsLong(v
);
336 param_type_is_float(self
, PVbuffer
[i
-1]) > 0) {
337 number
= PVbuffer
[i
];
338 PVbuffer
[i
] = CL_TypeIsInt(number
);
347 error_handler_called
= 0;
348 (*func
)(self
->ob_compressorHdl
, PVbuffer
, length
);
349 if (error_handler_called
) {
355 for (i
= 0; i
< length
; i
++) {
357 param_type_is_float(self
, PVbuffer
[i
-1]) > 0) {
358 number
= CL_TypeIsFloat(PVbuffer
[i
]);
359 v
= PyFloat_FromDouble(number
);
361 v
= PyInt_FromLong(PVbuffer
[i
]);
362 PyList_SetItem(list
, i
, v
);
373 clm_GetParams(PyObject
*self
, PyObject
*args
)
375 return doParams(SELF
, args
, clGetParams
, 1);
379 clm_SetParams(PyObject
*self
, PyObject
*args
)
381 return doParams(SELF
, args
, clSetParams
, 0);
385 do_get(clobject
*self
, PyObject
*args
, int (*func
)(CL_Handle
, int))
390 CheckCompressor(self
);
392 if (!PyArg_Parse(args
, "i", ¶mID
))
395 error_handler_called
= 0;
396 value
= (*func
)(self
->ob_compressorHdl
, paramID
);
397 if (error_handler_called
)
400 if (param_type_is_float(self
, paramID
) > 0) {
401 fvalue
= CL_TypeIsFloat(value
);
402 return PyFloat_FromDouble(fvalue
);
405 return PyInt_FromLong(value
);
409 clm_GetParam(PyObject
*self
, PyObject
*args
)
411 return do_get(SELF
, args
, clGetParam
);
415 clm_GetDefault(PyObject
*self
, PyObject
*args
)
417 return do_get(SELF
, args
, clGetDefault
);
421 clm_SetParam(PyObject
*self
, PyObject
*args
)
426 CheckCompressor(SELF
);
428 if (!PyArg_Parse(args
, "(ii)", ¶mID
, &value
)) {
430 if (!PyArg_Parse(args
, "(if)", ¶mID
, &fvalue
)) {
432 PyErr_SetString(PyExc_TypeError
,
433 "bad argument list (format '(ii)' or '(if)')");
436 value
= CL_TypeIsInt(fvalue
);
438 if (param_type_is_float(SELF
, paramID
) > 0) {
440 value
= CL_TypeIsInt(fvalue
);
444 error_handler_called
= 0;
445 value
= clSetParam(SELF
->ob_compressorHdl
, paramID
, value
);
446 if (error_handler_called
)
449 if (param_type_is_float(SELF
, paramID
) > 0)
450 return PyFloat_FromDouble(CL_TypeIsFloat(value
));
452 return PyInt_FromLong(value
);
456 clm_GetParamID(PyObject
*self
, PyObject
*args
)
461 CheckCompressor(SELF
);
463 if (!PyArg_Parse(args
, "s", &name
))
466 error_handler_called
= 0;
467 value
= clGetParamID(SELF
->ob_compressorHdl
, name
);
468 if (value
== FAILURE
|| error_handler_called
) {
469 if (!error_handler_called
)
470 PyErr_SetString(ClError
, "getparamid failed");
474 return PyInt_FromLong(value
);
478 clm_QueryParams(PyObject
*self
)
485 CheckCompressor(SELF
);
487 error_handler_called
= 0;
488 bufferlength
= clQueryParams(SELF
->ob_compressorHdl
, 0, 0);
489 if (error_handler_called
)
492 PVbuffer
= PyMem_NEW(int, bufferlength
);
493 if (PVbuffer
== NULL
)
494 return PyErr_NoMemory();
496 bufferlength
= clQueryParams(SELF
->ob_compressorHdl
, PVbuffer
,
498 if (error_handler_called
) {
503 list
= PyList_New(bufferlength
);
509 for (i
= 0; i
< bufferlength
; i
++) {
511 PyList_SetItem(list
, i
, PyInt_FromLong(PVbuffer
[i
]));
512 else if (PVbuffer
[i
] == 0) {
514 PyList_SetItem(list
, i
, Py_None
);
516 PyList_SetItem(list
, i
,
517 PyString_FromString((char *) PVbuffer
[i
]));
526 clm_GetMinMax(PyObject
*self
, PyObject
*args
)
531 CheckCompressor(SELF
);
533 if (!PyArg_Parse(args
, "i", ¶m
))
536 clGetMinMax(SELF
->ob_compressorHdl
, param
, &min
, &max
);
538 if (param_type_is_float(SELF
, param
) > 0) {
539 fmin
= CL_TypeIsFloat(min
);
540 fmax
= CL_TypeIsFloat(max
);
541 return Py_BuildValue("(ff)", fmin
, fmax
);
544 return Py_BuildValue("(ii)", min
, max
);
548 clm_GetName(PyObject
*self
, PyObject
*args
)
553 CheckCompressor(SELF
);
555 if (!PyArg_Parse(args
, "i", ¶m
))
558 error_handler_called
= 0;
559 name
= clGetName(SELF
->ob_compressorHdl
, param
);
560 if (name
== NULL
|| error_handler_called
) {
561 if (!error_handler_called
)
562 PyErr_SetString(ClError
, "getname failed");
566 return PyString_FromString(name
);
570 clm_QuerySchemeFromHandle(PyObject
*self
)
572 CheckCompressor(SELF
);
573 return PyInt_FromLong(clQuerySchemeFromHandle(SELF
->ob_compressorHdl
));
577 clm_ReadHeader(PyObject
*self
, PyObject
*args
)
582 CheckCompressor(SELF
);
584 if (!PyArg_Parse(args
, "s#", &header
, &headerSize
))
587 return PyInt_FromLong(clReadHeader(SELF
->ob_compressorHdl
,
588 headerSize
, header
));
591 static PyMethodDef compressor_methods
[] = {
592 {"close", clm_CloseCompressor
, METH_NOARGS
}, /* alias */
593 {"CloseCompressor", clm_CloseCompressor
, METH_NOARGS
},
594 {"Compress", clm_Compress
, METH_OLDARGS
},
595 {"GetDefault", clm_GetDefault
, METH_OLDARGS
},
596 {"GetMinMax", clm_GetMinMax
, METH_OLDARGS
},
597 {"GetName", clm_GetName
, METH_OLDARGS
},
598 {"GetParam", clm_GetParam
, METH_OLDARGS
},
599 {"GetParamID", clm_GetParamID
, METH_OLDARGS
},
600 {"GetParams", clm_GetParams
, METH_OLDARGS
},
601 {"QueryParams", clm_QueryParams
, METH_NOARGS
},
602 {"QuerySchemeFromHandle",clm_QuerySchemeFromHandle
, METH_NOARGS
},
603 {"SetParam", clm_SetParam
, METH_OLDARGS
},
604 {"SetParams", clm_SetParams
, METH_OLDARGS
},
605 {NULL
, NULL
} /* sentinel */
608 static PyMethodDef decompressor_methods
[] = {
609 {"close", clm_CloseDecompressor
, METH_NOARGS
}, /* alias */
610 {"CloseDecompressor", clm_CloseDecompressor
, METH_NOARGS
},
611 {"Decompress", clm_Decompress
, METH_OLDARGS
},
612 {"GetDefault", clm_GetDefault
, METH_OLDARGS
},
613 {"GetMinMax", clm_GetMinMax
, METH_OLDARGS
},
614 {"GetName", clm_GetName
, METH_OLDARGS
},
615 {"GetParam", clm_GetParam
, METH_OLDARGS
},
616 {"GetParamID", clm_GetParamID
, METH_OLDARGS
},
617 {"GetParams", clm_GetParams
, METH_OLDARGS
},
618 {"ReadHeader", clm_ReadHeader
, METH_OLDARGS
},
619 {"QueryParams", clm_QueryParams
, METH_NOARGS
},
620 {"QuerySchemeFromHandle",clm_QuerySchemeFromHandle
, METH_NOARGS
},
621 {"SetParam", clm_SetParam
, METH_OLDARGS
},
622 {"SetParams", clm_SetParams
, METH_OLDARGS
},
623 {NULL
, NULL
} /* sentinel */
627 cl_dealloc(PyObject
*self
)
629 if (SELF
->ob_compressorHdl
) {
630 if (SELF
->ob_isCompressor
)
631 clCloseCompressor(SELF
->ob_compressorHdl
);
633 clCloseDecompressor(SELF
->ob_compressorHdl
);
639 cl_getattr(PyObject
*self
, char *name
)
641 if (SELF
->ob_isCompressor
)
642 return Py_FindMethod(compressor_methods
, self
, name
);
644 return Py_FindMethod(decompressor_methods
, self
, name
);
647 static PyTypeObject Cltype
= {
648 PyObject_HEAD_INIT(&PyType_Type
)
651 sizeof(clobject
), /*tp_size*/
654 (destructor
)cl_dealloc
, /*tp_dealloc*/
656 (getattrfunc
)cl_getattr
, /*tp_getattr*/
661 0, /*tp_as_sequence*/
666 doOpen(PyObject
*self
, PyObject
*args
, int (*open_func
)(int, CL_Handle
*),
672 if (!PyArg_ParseTuple(args
, "i", &scheme
))
675 new = PyObject_New(clobject
, &Cltype
);
679 new->ob_compressorHdl
= NULL
;
680 new->ob_isCompressor
= iscompressor
;
681 new->ob_paramtypes
= NULL
;
683 error_handler_called
= 0;
684 if ((*open_func
)(scheme
, &new->ob_compressorHdl
) == FAILURE
||
685 error_handler_called
) {
687 if (!error_handler_called
)
688 PyErr_SetString(ClError
, "Open(De)Compressor failed");
691 return (PyObject
*)new;
695 cl_OpenCompressor(PyObject
*self
, PyObject
*args
)
697 return doOpen(self
, args
, clOpenCompressor
, 1);
701 cl_OpenDecompressor(PyObject
*self
, PyObject
*args
)
703 return doOpen(self
, args
, clOpenDecompressor
, 0);
707 cl_QueryScheme(PyObject
*self
, PyObject
*args
)
713 if (!PyArg_ParseTuple(args
, "s#", &header
, &headerlen
))
716 scheme
= clQueryScheme(header
);
718 PyErr_SetString(ClError
, "unknown compression scheme");
722 return PyInt_FromLong(scheme
);
726 cl_QueryMaxHeaderSize(PyObject
*self
, PyObject
*args
)
730 if (!PyArg_ParseTuple(args
, "i", &scheme
))
733 return PyInt_FromLong(clQueryMaxHeaderSize(scheme
));
737 cl_QueryAlgorithms(PyObject
*self
, PyObject
*args
)
739 int algorithmMediaType
;
745 if (!PyArg_ParseTuple(args
, "i", &algorithmMediaType
))
748 error_handler_called
= 0;
749 bufferlength
= clQueryAlgorithms(algorithmMediaType
, 0, 0);
750 if (error_handler_called
)
753 PVbuffer
= PyMem_NEW(int, bufferlength
);
754 if (PVbuffer
== NULL
)
755 return PyErr_NoMemory();
757 bufferlength
= clQueryAlgorithms(algorithmMediaType
, PVbuffer
,
759 if (error_handler_called
) {
764 list
= PyList_New(bufferlength
);
770 for (i
= 0; i
< bufferlength
; i
++) {
772 PyList_SetItem(list
, i
, PyInt_FromLong(PVbuffer
[i
]));
773 else if (PVbuffer
[i
] == 0) {
775 PyList_SetItem(list
, i
, Py_None
);
777 PyList_SetItem(list
, i
,
778 PyString_FromString((char *) PVbuffer
[i
]));
787 cl_QuerySchemeFromName(PyObject
*self
, PyObject
*args
)
789 int algorithmMediaType
;
793 if (!PyArg_ParseTuple(args
, "is", &algorithmMediaType
, &name
))
796 error_handler_called
= 0;
797 scheme
= clQuerySchemeFromName(algorithmMediaType
, name
);
798 if (error_handler_called
) {
799 PyErr_SetString(ClError
, "unknown compression scheme");
803 return PyInt_FromLong(scheme
);
807 cl_GetAlgorithmName(PyObject
*self
, PyObject
*args
)
812 if (!PyArg_ParseTuple(args
, "i", &scheme
))
815 name
= clGetAlgorithmName(scheme
);
817 PyErr_SetString(ClError
, "unknown compression scheme");
821 return PyString_FromString(name
);
825 do_set(PyObject
*self
, PyObject
*args
, int (*func
)(int, int, int))
827 int scheme
, paramID
, value
;
831 if (!PyArg_ParseTuple(args
, "iii", &scheme
, ¶mID
, &value
)) {
833 if (!PyArg_ParseTuple(args
, "iif", &scheme
, ¶mID
, &fvalue
)) {
835 PyErr_SetString(PyExc_TypeError
,
836 "bad argument list (format '(iii)' or '(iif)')");
839 value
= CL_TypeIsInt(fvalue
);
842 /* check some parameters which we know to be floats */
844 case CL_COMPRESSION_RATIO
:
847 value
= CL_TypeIsInt(fvalue
);
853 error_handler_called
= 0;
854 value
= (*func
)(scheme
, paramID
, value
);
855 if (error_handler_called
)
859 return PyFloat_FromDouble(CL_TypeIsFloat(value
));
861 return PyInt_FromLong(value
);
865 cl_SetDefault(PyObject
*self
, PyObject
*args
)
867 return do_set(self
, args
, clSetDefault
);
871 cl_SetMin(PyObject
*self
, PyObject
*args
)
873 return do_set(self
, args
, clSetMin
);
877 cl_SetMax(PyObject
*self
, PyObject
*args
)
879 return do_set(self
, args
, clSetMax
);
882 #define func(name, handler) \
883 static PyObject *cl_##name(PyObject *self, PyObject *args) \
886 if (!PyArg_ParseTuple(args, "i", &x)) return NULL; \
887 return Py##handler(CL_##name(x)); \
890 #define func2(name, handler) \
891 static PyObject *cl_##name(PyObject *self, PyObject *args) \
894 if (!PyArg_ParseTuple(args, "ii", &a1, &a2)) return NULL; \
895 return Py##handler(CL_##name(a1, a2)); \
898 func(BytesPerSample
, Int_FromLong
)
899 func(BytesPerPixel
, Int_FromLong
)
900 func(AudioFormatName
, String_FromString
)
901 func(VideoFormatName
, String_FromString
)
902 func(AlgorithmNumber
, Int_FromLong
)
903 func(AlgorithmType
, Int_FromLong
)
904 func2(Algorithm
, Int_FromLong
)
905 func(ParamNumber
, Int_FromLong
)
906 func(ParamType
, Int_FromLong
)
907 func2(ParamID
, Int_FromLong
)
911 cvt_type(PyObject
*self
, PyObject
*args
)
916 if (PyArg_Parse(args
, "i", &number
))
917 return PyFloat_FromDouble(CL_TypeIsFloat(number
));
920 if (PyArg_Parse(args
, "f", &fnumber
))
921 return PyInt_FromLong(CL_TypeIsInt(fnumber
));
927 static PyMethodDef cl_methods
[] = {
928 {"CompressImage", cl_CompressImage
, METH_VARARGS
},
929 {"DecompressImage", cl_DecompressImage
, METH_VARARGS
},
930 {"GetAlgorithmName", cl_GetAlgorithmName
, METH_VARARGS
},
931 {"OpenCompressor", cl_OpenCompressor
, METH_VARARGS
},
932 {"OpenDecompressor", cl_OpenDecompressor
, METH_VARARGS
},
933 {"QueryAlgorithms", cl_QueryAlgorithms
, METH_VARARGS
},
934 {"QueryMaxHeaderSize", cl_QueryMaxHeaderSize
, METH_VARARGS
},
935 {"QueryScheme", cl_QueryScheme
, METH_VARARGS
},
936 {"QuerySchemeFromName", cl_QuerySchemeFromName
, METH_VARARGS
},
937 {"SetDefault", cl_SetDefault
, METH_VARARGS
},
938 {"SetMax", cl_SetMax
, METH_VARARGS
},
939 {"SetMin", cl_SetMin
, METH_VARARGS
},
940 {"BytesPerSample", cl_BytesPerSample
, METH_VARARGS
},
941 {"BytesPerPixel", cl_BytesPerPixel
, METH_VARARGS
},
942 {"AudioFormatName", cl_AudioFormatName
, METH_VARARGS
},
943 {"VideoFormatName", cl_VideoFormatName
, METH_VARARGS
},
944 {"AlgorithmNumber", cl_AlgorithmNumber
, METH_VARARGS
},
945 {"AlgorithmType", cl_AlgorithmType
, METH_VARARGS
},
946 {"Algorithm", cl_Algorithm
, METH_VARARGS
},
947 {"ParamNumber", cl_ParamNumber
, METH_VARARGS
},
948 {"ParamType", cl_ParamType
, METH_VARARGS
},
949 {"ParamID", cl_ParamID
, METH_VARARGS
},
951 {"cvt_type", cvt_type
, METH_VARARGS
},
953 {NULL
, NULL
} /* Sentinel */
956 #ifdef CL_JPEG_SOFTWARE
957 #define IRIX_5_3_LIBRARY
965 if (PyErr_WarnPy3k("the cl module has been removed in "
966 "Python 3.0", 2) < 0)
969 m
= Py_InitModule("cl", cl_methods
);
972 d
= PyModule_GetDict(m
);
974 ClError
= PyErr_NewException("cl.error", NULL
, NULL
);
975 (void) PyDict_SetItemString(d
, "error", ClError
);
977 #ifdef CL_ADDED_ALGORITHM_ERROR
978 x
= PyInt_FromLong(CL_ADDED_ALGORITHM_ERROR
);
979 if (x
== NULL
|| PyDict_SetItemString(d
, "ADDED_ALGORITHM_ERROR", x
) < 0)
984 x
= PyInt_FromLong(CL_ALAW
);
985 if (x
== NULL
|| PyDict_SetItemString(d
, "ALAW", x
) < 0)
989 #ifdef CL_ALGORITHM_ID
990 x
= PyInt_FromLong(CL_ALGORITHM_ID
);
991 if (x
== NULL
|| PyDict_SetItemString(d
, "ALGORITHM_ID", x
) < 0)
995 #ifdef CL_ALGORITHM_TABLE_FULL
996 x
= PyInt_FromLong(CL_ALGORITHM_TABLE_FULL
);
997 if (x
== NULL
|| PyDict_SetItemString(d
, "ALGORITHM_TABLE_FULL", x
) < 0)
1001 #ifdef CL_ALGORITHM_VERSION
1002 x
= PyInt_FromLong(CL_ALGORITHM_VERSION
);
1003 if (x
== NULL
|| PyDict_SetItemString(d
, "ALGORITHM_VERSION", x
) < 0)
1008 x
= PyInt_FromLong(CL_ALG_AUDIO
);
1009 if (x
== NULL
|| PyDict_SetItemString(d
, "ALG_AUDIO", x
) < 0)
1014 x
= PyInt_FromLong(CL_ALG_VIDEO
);
1015 if (x
== NULL
|| PyDict_SetItemString(d
, "ALG_VIDEO", x
) < 0)
1020 x
= PyInt_FromLong(CL_AUDIO
);
1021 if (x
== NULL
|| PyDict_SetItemString(d
, "AUDIO", x
) < 0)
1025 #ifdef CL_AWARE_BITRATE_POLICY
1026 x
= PyInt_FromLong(CL_AWARE_BITRATE_POLICY
);
1027 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_BITRATE_POLICY", x
) < 0)
1031 #ifdef CL_AWARE_BITRATE_TARGET
1032 x
= PyInt_FromLong(CL_AWARE_BITRATE_TARGET
);
1033 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_BITRATE_TARGET", x
) < 0)
1037 #ifdef CL_AWARE_CHANNEL_POLICY
1038 x
= PyInt_FromLong(CL_AWARE_CHANNEL_POLICY
);
1039 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_CHANNEL_POLICY", x
) < 0)
1043 #ifdef CL_AWARE_CONST_QUAL
1044 x
= PyInt_FromLong(CL_AWARE_CONST_QUAL
);
1045 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_CONST_QUAL", x
) < 0)
1049 #ifdef CL_AWARE_ERROR
1050 x
= PyInt_FromLong(CL_AWARE_ERROR
);
1051 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_ERROR", x
) < 0)
1055 #ifdef CL_AWARE_FIXED_RATE
1056 x
= PyInt_FromLong(CL_AWARE_FIXED_RATE
);
1057 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_FIXED_RATE", x
) < 0)
1061 #ifdef CL_AWARE_INDEPENDENT
1062 x
= PyInt_FromLong(CL_AWARE_INDEPENDENT
);
1063 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_INDEPENDENT", x
) < 0)
1067 #ifdef CL_AWARE_JOINT_STEREO
1068 x
= PyInt_FromLong(CL_AWARE_JOINT_STEREO
);
1069 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_JOINT_STEREO", x
) < 0)
1073 #ifdef CL_AWARE_LAYER
1074 x
= PyInt_FromLong(CL_AWARE_LAYER
);
1075 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_LAYER", x
) < 0)
1079 #ifdef CL_AWARE_LOSSLESS
1080 x
= PyInt_FromLong(CL_AWARE_LOSSLESS
);
1081 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_LOSSLESS", x
) < 0)
1085 #ifdef CL_AWARE_MPEG_AUDIO
1086 x
= PyInt_FromLong(CL_AWARE_MPEG_AUDIO
);
1087 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_MPEG_AUDIO", x
) < 0)
1091 #ifdef CL_AWARE_MPEG_LAYER_I
1092 x
= PyInt_FromLong(CL_AWARE_MPEG_LAYER_I
);
1093 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_MPEG_LAYER_I", x
) < 0)
1097 #ifdef CL_AWARE_MPEG_LAYER_II
1098 x
= PyInt_FromLong(CL_AWARE_MPEG_LAYER_II
);
1099 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_MPEG_LAYER_II", x
) < 0)
1103 #ifdef CL_AWARE_MULTIRATE
1104 x
= PyInt_FromLong(CL_AWARE_MULTIRATE
);
1105 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_MULTIRATE", x
) < 0)
1109 #ifdef CL_AWARE_NOISE_MARGIN
1110 x
= PyInt_FromLong(CL_AWARE_NOISE_MARGIN
);
1111 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_NOISE_MARGIN", x
) < 0)
1115 #ifdef CL_AWARE_STEREO
1116 x
= PyInt_FromLong(CL_AWARE_STEREO
);
1117 if (x
== NULL
|| PyDict_SetItemString(d
, "AWARE_STEREO", x
) < 0)
1121 #ifdef CL_BAD_ALGORITHM_NAME
1122 x
= PyInt_FromLong(CL_BAD_ALGORITHM_NAME
);
1123 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_ALGORITHM_NAME", x
) < 0)
1127 #ifdef CL_BAD_ALGORITHM_TYPE
1128 x
= PyInt_FromLong(CL_BAD_ALGORITHM_TYPE
);
1129 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_ALGORITHM_TYPE", x
) < 0)
1133 #ifdef CL_BAD_BLOCK_SIZE
1134 x
= PyInt_FromLong(CL_BAD_BLOCK_SIZE
);
1135 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_BLOCK_SIZE", x
) < 0)
1140 x
= PyInt_FromLong(CL_BAD_BOARD
);
1141 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_BOARD", x
) < 0)
1145 #ifdef CL_BAD_BUFFERING
1146 x
= PyInt_FromLong(CL_BAD_BUFFERING
);
1147 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_BUFFERING", x
) < 0)
1151 #ifdef CL_BAD_BUFFERLENGTH_NEG
1152 x
= PyInt_FromLong(CL_BAD_BUFFERLENGTH_NEG
);
1153 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_BUFFERLENGTH_NEG", x
) < 0)
1157 #ifdef CL_BAD_BUFFERLENGTH_ODD
1158 x
= PyInt_FromLong(CL_BAD_BUFFERLENGTH_ODD
);
1159 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_BUFFERLENGTH_ODD", x
) < 0)
1163 #ifdef CL_BAD_BUFFER_EXISTS
1164 x
= PyInt_FromLong(CL_BAD_BUFFER_EXISTS
);
1165 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_BUFFER_EXISTS", x
) < 0)
1169 #ifdef CL_BAD_BUFFER_HANDLE
1170 x
= PyInt_FromLong(CL_BAD_BUFFER_HANDLE
);
1171 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_BUFFER_HANDLE", x
) < 0)
1175 #ifdef CL_BAD_BUFFER_POINTER
1176 x
= PyInt_FromLong(CL_BAD_BUFFER_POINTER
);
1177 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_BUFFER_POINTER", x
) < 0)
1181 #ifdef CL_BAD_BUFFER_QUERY_SIZE
1182 x
= PyInt_FromLong(CL_BAD_BUFFER_QUERY_SIZE
);
1183 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_BUFFER_QUERY_SIZE", x
) < 0)
1187 #ifdef CL_BAD_BUFFER_SIZE
1188 x
= PyInt_FromLong(CL_BAD_BUFFER_SIZE
);
1189 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_BUFFER_SIZE", x
) < 0)
1193 #ifdef CL_BAD_BUFFER_SIZE_POINTER
1194 x
= PyInt_FromLong(CL_BAD_BUFFER_SIZE_POINTER
);
1195 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_BUFFER_SIZE_POINTER", x
) < 0)
1199 #ifdef CL_BAD_BUFFER_TYPE
1200 x
= PyInt_FromLong(CL_BAD_BUFFER_TYPE
);
1201 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_BUFFER_TYPE", x
) < 0)
1205 #ifdef CL_BAD_COMPRESSION_SCHEME
1206 x
= PyInt_FromLong(CL_BAD_COMPRESSION_SCHEME
);
1207 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_COMPRESSION_SCHEME", x
) < 0)
1211 #ifdef CL_BAD_COMPRESSOR_HANDLE
1212 x
= PyInt_FromLong(CL_BAD_COMPRESSOR_HANDLE
);
1213 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_COMPRESSOR_HANDLE", x
) < 0)
1217 #ifdef CL_BAD_COMPRESSOR_HANDLE_POINTER
1218 x
= PyInt_FromLong(CL_BAD_COMPRESSOR_HANDLE_POINTER
);
1219 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_COMPRESSOR_HANDLE_POINTER", x
) < 0)
1223 #ifdef CL_BAD_FRAME_SIZE
1224 x
= PyInt_FromLong(CL_BAD_FRAME_SIZE
);
1225 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_FRAME_SIZE", x
) < 0)
1229 #ifdef CL_BAD_FUNCTIONALITY
1230 x
= PyInt_FromLong(CL_BAD_FUNCTIONALITY
);
1231 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_FUNCTIONALITY", x
) < 0)
1235 #ifdef CL_BAD_FUNCTION_POINTER
1236 x
= PyInt_FromLong(CL_BAD_FUNCTION_POINTER
);
1237 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_FUNCTION_POINTER", x
) < 0)
1241 #ifdef CL_BAD_HEADER_SIZE
1242 x
= PyInt_FromLong(CL_BAD_HEADER_SIZE
);
1243 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_HEADER_SIZE", x
) < 0)
1247 #ifdef CL_BAD_INITIAL_VALUE
1248 x
= PyInt_FromLong(CL_BAD_INITIAL_VALUE
);
1249 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_INITIAL_VALUE", x
) < 0)
1253 #ifdef CL_BAD_INTERNAL_FORMAT
1254 x
= PyInt_FromLong(CL_BAD_INTERNAL_FORMAT
);
1255 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_INTERNAL_FORMAT", x
) < 0)
1259 #ifdef CL_BAD_LICENSE
1260 x
= PyInt_FromLong(CL_BAD_LICENSE
);
1261 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_LICENSE", x
) < 0)
1265 #ifdef CL_BAD_MIN_GT_MAX
1266 x
= PyInt_FromLong(CL_BAD_MIN_GT_MAX
);
1267 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_MIN_GT_MAX", x
) < 0)
1271 #ifdef CL_BAD_NO_BUFFERSPACE
1272 x
= PyInt_FromLong(CL_BAD_NO_BUFFERSPACE
);
1273 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_NO_BUFFERSPACE", x
) < 0)
1277 #ifdef CL_BAD_NUMBER_OF_BLOCKS
1278 x
= PyInt_FromLong(CL_BAD_NUMBER_OF_BLOCKS
);
1279 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_NUMBER_OF_BLOCKS", x
) < 0)
1284 x
= PyInt_FromLong(CL_BAD_PARAM
);
1285 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_PARAM", x
) < 0)
1289 #ifdef CL_BAD_PARAM_ID_POINTER
1290 x
= PyInt_FromLong(CL_BAD_PARAM_ID_POINTER
);
1291 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_PARAM_ID_POINTER", x
) < 0)
1295 #ifdef CL_BAD_PARAM_TYPE
1296 x
= PyInt_FromLong(CL_BAD_PARAM_TYPE
);
1297 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_PARAM_TYPE", x
) < 0)
1301 #ifdef CL_BAD_POINTER
1302 x
= PyInt_FromLong(CL_BAD_POINTER
);
1303 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_POINTER", x
) < 0)
1307 #ifdef CL_BAD_PVBUFFER
1308 x
= PyInt_FromLong(CL_BAD_PVBUFFER
);
1309 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_PVBUFFER", x
) < 0)
1313 #ifdef CL_BAD_SCHEME_POINTER
1314 x
= PyInt_FromLong(CL_BAD_SCHEME_POINTER
);
1315 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_SCHEME_POINTER", x
) < 0)
1319 #ifdef CL_BAD_STREAM_HEADER
1320 x
= PyInt_FromLong(CL_BAD_STREAM_HEADER
);
1321 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_STREAM_HEADER", x
) < 0)
1325 #ifdef CL_BAD_STRING_POINTER
1326 x
= PyInt_FromLong(CL_BAD_STRING_POINTER
);
1327 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_STRING_POINTER", x
) < 0)
1331 #ifdef CL_BAD_TEXT_STRING_PTR
1332 x
= PyInt_FromLong(CL_BAD_TEXT_STRING_PTR
);
1333 if (x
== NULL
|| PyDict_SetItemString(d
, "BAD_TEXT_STRING_PTR", x
) < 0)
1338 x
= PyInt_FromLong(CL_BEST_FIT
);
1339 if (x
== NULL
|| PyDict_SetItemString(d
, "BEST_FIT", x
) < 0)
1343 #ifdef CL_BIDIRECTIONAL
1344 x
= PyInt_FromLong(CL_BIDIRECTIONAL
);
1345 if (x
== NULL
|| PyDict_SetItemString(d
, "BIDIRECTIONAL", x
) < 0)
1350 x
= PyInt_FromLong(CL_BITRATE
);
1351 if (x
== NULL
|| PyDict_SetItemString(d
, "BITRATE", x
) < 0)
1355 #ifdef CL_BITRATE_POLICY
1356 x
= PyInt_FromLong(CL_BITRATE_POLICY
);
1357 if (x
== NULL
|| PyDict_SetItemString(d
, "BITRATE_POLICY", x
) < 0)
1361 #ifdef CL_BITRATE_TARGET
1362 x
= PyInt_FromLong(CL_BITRATE_TARGET
);
1363 if (x
== NULL
|| PyDict_SetItemString(d
, "BITRATE_TARGET", x
) < 0)
1367 #ifdef CL_BITS_PER_COMPONENT
1368 x
= PyInt_FromLong(CL_BITS_PER_COMPONENT
);
1369 if (x
== NULL
|| PyDict_SetItemString(d
, "BITS_PER_COMPONENT", x
) < 0)
1374 x
= PyInt_FromLong(CL_BLENDING
);
1375 if (x
== NULL
|| PyDict_SetItemString(d
, "BLENDING", x
) < 0)
1379 #ifdef CL_BLOCK_SIZE
1380 x
= PyInt_FromLong(CL_BLOCK_SIZE
);
1381 if (x
== NULL
|| PyDict_SetItemString(d
, "BLOCK_SIZE", x
) < 0)
1386 x
= PyInt_FromLong(CL_BOTTOM_UP
);
1387 if (x
== NULL
|| PyDict_SetItemString(d
, "BOTTOM_UP", x
) < 0)
1391 #ifdef CL_BUFFER_NOT_CREATED
1392 x
= PyInt_FromLong(CL_BUFFER_NOT_CREATED
);
1393 if (x
== NULL
|| PyDict_SetItemString(d
, "BUFFER_NOT_CREATED", x
) < 0)
1397 #ifdef CL_BUF_COMPRESSED
1398 x
= PyInt_FromLong(CL_BUF_COMPRESSED
);
1399 if (x
== NULL
|| PyDict_SetItemString(d
, "BUF_COMPRESSED", x
) < 0)
1404 x
= PyInt_FromLong(CL_BUF_DATA
);
1405 if (x
== NULL
|| PyDict_SetItemString(d
, "BUF_DATA", x
) < 0)
1410 x
= PyInt_FromLong(CL_BUF_FRAME
);
1411 if (x
== NULL
|| PyDict_SetItemString(d
, "BUF_FRAME", x
) < 0)
1415 #ifdef CL_CHANNEL_POLICY
1416 x
= PyInt_FromLong(CL_CHANNEL_POLICY
);
1417 if (x
== NULL
|| PyDict_SetItemString(d
, "CHANNEL_POLICY", x
) < 0)
1421 #ifdef CL_CHROMA_THRESHOLD
1422 x
= PyInt_FromLong(CL_CHROMA_THRESHOLD
);
1423 if (x
== NULL
|| PyDict_SetItemString(d
, "CHROMA_THRESHOLD", x
) < 0)
1428 x
= PyInt_FromLong(CL_CODEC
);
1429 if (x
== NULL
|| PyDict_SetItemString(d
, "CODEC", x
) < 0)
1433 #ifdef CL_COMPONENTS
1434 x
= PyInt_FromLong(CL_COMPONENTS
);
1435 if (x
== NULL
|| PyDict_SetItemString(d
, "COMPONENTS", x
) < 0)
1439 #ifdef CL_COMPRESSED_BUFFER_SIZE
1440 x
= PyInt_FromLong(CL_COMPRESSED_BUFFER_SIZE
);
1441 if (x
== NULL
|| PyDict_SetItemString(d
, "COMPRESSED_BUFFER_SIZE", x
) < 0)
1445 #ifdef CL_COMPRESSION_RATIO
1446 x
= PyInt_FromLong(CL_COMPRESSION_RATIO
);
1447 if (x
== NULL
|| PyDict_SetItemString(d
, "COMPRESSION_RATIO", x
) < 0)
1451 #ifdef CL_COMPRESSOR
1452 x
= PyInt_FromLong(CL_COMPRESSOR
);
1453 if (x
== NULL
|| PyDict_SetItemString(d
, "COMPRESSOR", x
) < 0)
1457 #ifdef CL_CONTINUOUS_BLOCK
1458 x
= PyInt_FromLong(CL_CONTINUOUS_BLOCK
);
1459 if (x
== NULL
|| PyDict_SetItemString(d
, "CONTINUOUS_BLOCK", x
) < 0)
1463 #ifdef CL_CONTINUOUS_NONBLOCK
1464 x
= PyInt_FromLong(CL_CONTINUOUS_NONBLOCK
);
1465 if (x
== NULL
|| PyDict_SetItemString(d
, "CONTINUOUS_NONBLOCK", x
) < 0)
1469 #ifdef CL_COSMO_CODEC_CONTROL
1470 x
= PyInt_FromLong(CL_COSMO_CODEC_CONTROL
);
1471 if (x
== NULL
|| PyDict_SetItemString(d
, "COSMO_CODEC_CONTROL", x
) < 0)
1475 #ifdef CL_COSMO_NUM_PARAMS
1476 x
= PyInt_FromLong(CL_COSMO_NUM_PARAMS
);
1477 if (x
== NULL
|| PyDict_SetItemString(d
, "COSMO_NUM_PARAMS", x
) < 0)
1481 #ifdef CL_COSMO_VALUE_BASE
1482 x
= PyInt_FromLong(CL_COSMO_VALUE_BASE
);
1483 if (x
== NULL
|| PyDict_SetItemString(d
, "COSMO_VALUE_BASE", x
) < 0)
1487 #ifdef CL_COSMO_VIDEO_MANUAL_CONTROL
1488 x
= PyInt_FromLong(CL_COSMO_VIDEO_MANUAL_CONTROL
);
1489 if (x
== NULL
|| PyDict_SetItemString(d
, "COSMO_VIDEO_MANUAL_CONTROL", x
) < 0)
1493 #ifdef CL_COSMO_VIDEO_TRANSFER_MODE
1494 x
= PyInt_FromLong(CL_COSMO_VIDEO_TRANSFER_MODE
);
1495 if (x
== NULL
|| PyDict_SetItemString(d
, "COSMO_VIDEO_TRANSFER_MODE", x
) < 0)
1500 x
= PyInt_FromLong(CL_DATA
);
1501 if (x
== NULL
|| PyDict_SetItemString(d
, "DATA", x
) < 0)
1505 #ifdef CL_DECOMPRESSOR
1506 x
= PyInt_FromLong(CL_DECOMPRESSOR
);
1507 if (x
== NULL
|| PyDict_SetItemString(d
, "DECOMPRESSOR", x
) < 0)
1512 x
= PyInt_FromLong(CL_DSO_ERROR
);
1513 if (x
== NULL
|| PyDict_SetItemString(d
, "DSO_ERROR", x
) < 0)
1517 #ifdef CL_EDGE_THRESHOLD
1518 x
= PyInt_FromLong(CL_EDGE_THRESHOLD
);
1519 if (x
== NULL
|| PyDict_SetItemString(d
, "EDGE_THRESHOLD", x
) < 0)
1523 #ifdef CL_ENABLE_IMAGEINFO
1524 x
= PyInt_FromLong(CL_ENABLE_IMAGEINFO
);
1525 if (x
== NULL
|| PyDict_SetItemString(d
, "ENABLE_IMAGEINFO", x
) < 0)
1529 #ifdef CL_END_OF_SEQUENCE
1530 x
= PyInt_FromLong(CL_END_OF_SEQUENCE
);
1531 if (x
== NULL
|| PyDict_SetItemString(d
, "END_OF_SEQUENCE", x
) < 0)
1535 #ifdef CL_ENUM_VALUE
1536 x
= PyInt_FromLong(CL_ENUM_VALUE
);
1537 if (x
== NULL
|| PyDict_SetItemString(d
, "ENUM_VALUE", x
) < 0)
1541 #ifdef CL_EXACT_COMPRESSION_RATIO
1542 x
= PyInt_FromLong(CL_EXACT_COMPRESSION_RATIO
);
1543 if (x
== NULL
|| PyDict_SetItemString(d
, "EXACT_COMPRESSION_RATIO", x
) < 0)
1547 #ifdef CL_EXTERNAL_DEVICE
1548 x
= PyInt_FromLong((long) CL_EXTERNAL_DEVICE
);
1549 if (x
== NULL
|| PyDict_SetItemString(d
, "EXTERNAL_DEVICE", x
) < 0)
1553 #ifdef CL_FLOATING_ENUM_VALUE
1554 x
= PyInt_FromLong(CL_FLOATING_ENUM_VALUE
);
1555 if (x
== NULL
|| PyDict_SetItemString(d
, "FLOATING_ENUM_VALUE", x
) < 0)
1559 #ifdef CL_FLOATING_RANGE_VALUE
1560 x
= PyInt_FromLong(CL_FLOATING_RANGE_VALUE
);
1561 if (x
== NULL
|| PyDict_SetItemString(d
, "FLOATING_RANGE_VALUE", x
) < 0)
1566 x
= PyInt_FromLong(CL_FORMAT
);
1567 if (x
== NULL
|| PyDict_SetItemString(d
, "FORMAT", x
) < 0)
1571 #ifdef CL_FORMAT_ABGR
1572 x
= PyInt_FromLong(CL_FORMAT_ABGR
);
1573 if (x
== NULL
|| PyDict_SetItemString(d
, "FORMAT_ABGR", x
) < 0)
1577 #ifdef CL_FORMAT_BGR
1578 x
= PyInt_FromLong(CL_FORMAT_BGR
);
1579 if (x
== NULL
|| PyDict_SetItemString(d
, "FORMAT_BGR", x
) < 0)
1583 #ifdef CL_FORMAT_BGR233
1584 x
= PyInt_FromLong(CL_FORMAT_BGR233
);
1585 if (x
== NULL
|| PyDict_SetItemString(d
, "FORMAT_BGR233", x
) < 0)
1589 #ifdef CL_FORMAT_GRAYSCALE
1590 x
= PyInt_FromLong(CL_FORMAT_GRAYSCALE
);
1591 if (x
== NULL
|| PyDict_SetItemString(d
, "FORMAT_GRAYSCALE", x
) < 0)
1595 #ifdef CL_FORMAT_MONO
1596 x
= PyInt_FromLong(CL_FORMAT_MONO
);
1597 if (x
== NULL
|| PyDict_SetItemString(d
, "FORMAT_MONO", x
) < 0)
1601 #ifdef CL_FORMAT_RBG323
1602 x
= PyInt_FromLong(CL_FORMAT_RBG323
);
1603 if (x
== NULL
|| PyDict_SetItemString(d
, "FORMAT_RBG323", x
) < 0)
1607 #ifdef CL_FORMAT_STEREO_INTERLEAVED
1608 x
= PyInt_FromLong(CL_FORMAT_STEREO_INTERLEAVED
);
1609 if (x
== NULL
|| PyDict_SetItemString(d
, "FORMAT_STEREO_INTERLEAVED", x
) < 0)
1613 #ifdef CL_FORMAT_XBGR
1614 x
= PyInt_FromLong(CL_FORMAT_XBGR
);
1615 if (x
== NULL
|| PyDict_SetItemString(d
, "FORMAT_XBGR", x
) < 0)
1619 #ifdef CL_FORMAT_YCbCr
1620 x
= PyInt_FromLong(CL_FORMAT_YCbCr
);
1621 if (x
== NULL
|| PyDict_SetItemString(d
, "FORMAT_YCbCr", x
) < 0)
1625 #ifdef CL_FORMAT_YCbCr422
1626 x
= PyInt_FromLong(CL_FORMAT_YCbCr422
);
1627 if (x
== NULL
|| PyDict_SetItemString(d
, "FORMAT_YCbCr422", x
) < 0)
1631 #ifdef CL_FORMAT_YCbCr422DC
1632 x
= PyInt_FromLong(CL_FORMAT_YCbCr422DC
);
1633 if (x
== NULL
|| PyDict_SetItemString(d
, "FORMAT_YCbCr422DC", x
) < 0)
1638 x
= PyInt_FromLong(CL_FRAME
);
1639 if (x
== NULL
|| PyDict_SetItemString(d
, "FRAME", x
) < 0)
1643 #ifdef CL_FRAMES_PER_CHUNK
1644 x
= PyInt_FromLong(CL_FRAMES_PER_CHUNK
);
1645 if (x
== NULL
|| PyDict_SetItemString(d
, "FRAMES_PER_CHUNK", x
) < 0)
1649 #ifdef CL_FRAME_BUFFER_SIZE
1650 x
= PyInt_FromLong(CL_FRAME_BUFFER_SIZE
);
1651 if (x
== NULL
|| PyDict_SetItemString(d
, "FRAME_BUFFER_SIZE", x
) < 0)
1655 #ifdef CL_FRAME_BUFFER_SIZE_ZERO
1656 x
= PyInt_FromLong(CL_FRAME_BUFFER_SIZE_ZERO
);
1657 if (x
== NULL
|| PyDict_SetItemString(d
, "FRAME_BUFFER_SIZE_ZERO", x
) < 0)
1661 #ifdef CL_FRAME_INDEX
1662 x
= PyInt_FromLong(CL_FRAME_INDEX
);
1663 if (x
== NULL
|| PyDict_SetItemString(d
, "FRAME_INDEX", x
) < 0)
1667 #ifdef CL_FRAME_RATE
1668 x
= PyInt_FromLong(CL_FRAME_RATE
);
1669 if (x
== NULL
|| PyDict_SetItemString(d
, "FRAME_RATE", x
) < 0)
1673 #ifdef CL_FRAME_SIZE
1674 x
= PyInt_FromLong(CL_FRAME_SIZE
);
1675 if (x
== NULL
|| PyDict_SetItemString(d
, "FRAME_SIZE", x
) < 0)
1679 #ifdef CL_FRAME_TYPE
1680 x
= PyInt_FromLong(CL_FRAME_TYPE
);
1681 if (x
== NULL
|| PyDict_SetItemString(d
, "FRAME_TYPE", x
) < 0)
1686 x
= PyInt_FromLong(CL_G711_ALAW
);
1687 if (x
== NULL
|| PyDict_SetItemString(d
, "G711_ALAW", x
) < 0)
1691 #ifdef CL_G711_ALAW_SOFTWARE
1692 x
= PyInt_FromLong(CL_G711_ALAW_SOFTWARE
);
1693 if (x
== NULL
|| PyDict_SetItemString(d
, "G711_ALAW_SOFTWARE", x
) < 0)
1698 x
= PyInt_FromLong(CL_G711_ULAW
);
1699 if (x
== NULL
|| PyDict_SetItemString(d
, "G711_ULAW", x
) < 0)
1703 #ifdef CL_G711_ULAW_SOFTWARE
1704 x
= PyInt_FromLong(CL_G711_ULAW_SOFTWARE
);
1705 if (x
== NULL
|| PyDict_SetItemString(d
, "G711_ULAW_SOFTWARE", x
) < 0)
1710 x
= PyInt_FromLong(CL_GRAYSCALE
);
1711 if (x
== NULL
|| PyDict_SetItemString(d
, "GRAYSCALE", x
) < 0)
1716 x
= PyInt_FromLong(CL_HDCC
);
1717 if (x
== NULL
|| PyDict_SetItemString(d
, "HDCC", x
) < 0)
1721 #ifdef CL_HDCC_SAMPLES_PER_TILE
1722 x
= PyInt_FromLong(CL_HDCC_SAMPLES_PER_TILE
);
1723 if (x
== NULL
|| PyDict_SetItemString(d
, "HDCC_SAMPLES_PER_TILE", x
) < 0)
1727 #ifdef CL_HDCC_SOFTWARE
1728 x
= PyInt_FromLong(CL_HDCC_SOFTWARE
);
1729 if (x
== NULL
|| PyDict_SetItemString(d
, "HDCC_SOFTWARE", x
) < 0)
1733 #ifdef CL_HDCC_TILE_THRESHOLD
1734 x
= PyInt_FromLong(CL_HDCC_TILE_THRESHOLD
);
1735 if (x
== NULL
|| PyDict_SetItemString(d
, "HDCC_TILE_THRESHOLD", x
) < 0)
1739 #ifdef CL_HEADER_START_CODE
1740 x
= PyInt_FromLong(CL_HEADER_START_CODE
);
1741 if (x
== NULL
|| PyDict_SetItemString(d
, "HEADER_START_CODE", x
) < 0)
1745 #ifdef CL_IMAGEINFO_FIELDMASK
1746 x
= PyInt_FromLong(CL_IMAGEINFO_FIELDMASK
);
1747 if (x
== NULL
|| PyDict_SetItemString(d
, "IMAGEINFO_FIELDMASK", x
) < 0)
1751 #ifdef CL_IMAGE_CROP_BOTTOM
1752 x
= PyInt_FromLong(CL_IMAGE_CROP_BOTTOM
);
1753 if (x
== NULL
|| PyDict_SetItemString(d
, "IMAGE_CROP_BOTTOM", x
) < 0)
1757 #ifdef CL_IMAGE_CROP_LEFT
1758 x
= PyInt_FromLong(CL_IMAGE_CROP_LEFT
);
1759 if (x
== NULL
|| PyDict_SetItemString(d
, "IMAGE_CROP_LEFT", x
) < 0)
1763 #ifdef CL_IMAGE_CROP_RIGHT
1764 x
= PyInt_FromLong(CL_IMAGE_CROP_RIGHT
);
1765 if (x
== NULL
|| PyDict_SetItemString(d
, "IMAGE_CROP_RIGHT", x
) < 0)
1769 #ifdef CL_IMAGE_CROP_TOP
1770 x
= PyInt_FromLong(CL_IMAGE_CROP_TOP
);
1771 if (x
== NULL
|| PyDict_SetItemString(d
, "IMAGE_CROP_TOP", x
) < 0)
1775 #ifdef CL_IMAGE_HEIGHT
1776 x
= PyInt_FromLong(CL_IMAGE_HEIGHT
);
1777 if (x
== NULL
|| PyDict_SetItemString(d
, "IMAGE_HEIGHT", x
) < 0)
1781 #ifdef CL_IMAGE_WIDTH
1782 x
= PyInt_FromLong(CL_IMAGE_WIDTH
);
1783 if (x
== NULL
|| PyDict_SetItemString(d
, "IMAGE_WIDTH", x
) < 0)
1787 #ifdef CL_IMPACT_CODEC_CONTROL
1788 x
= PyInt_FromLong(CL_IMPACT_CODEC_CONTROL
);
1789 if (x
== NULL
|| PyDict_SetItemString(d
, "IMPACT_CODEC_CONTROL", x
) < 0)
1793 #ifdef CL_IMPACT_FRAME_INTERLEAVE
1794 x
= PyInt_FromLong(CL_IMPACT_FRAME_INTERLEAVE
);
1795 if (x
== NULL
|| PyDict_SetItemString(d
, "IMPACT_FRAME_INTERLEAVE", x
) < 0)
1799 #ifdef CL_IMPACT_NUM_PARAMS
1800 x
= PyInt_FromLong(CL_IMPACT_NUM_PARAMS
);
1801 if (x
== NULL
|| PyDict_SetItemString(d
, "IMPACT_NUM_PARAMS", x
) < 0)
1805 #ifdef CL_INTERNAL_FORMAT
1806 x
= PyInt_FromLong(CL_INTERNAL_FORMAT
);
1807 if (x
== NULL
|| PyDict_SetItemString(d
, "INTERNAL_FORMAT", x
) < 0)
1811 #ifdef CL_INTERNAL_IMAGE_HEIGHT
1812 x
= PyInt_FromLong(CL_INTERNAL_IMAGE_HEIGHT
);
1813 if (x
== NULL
|| PyDict_SetItemString(d
, "INTERNAL_IMAGE_HEIGHT", x
) < 0)
1817 #ifdef CL_INTERNAL_IMAGE_WIDTH
1818 x
= PyInt_FromLong(CL_INTERNAL_IMAGE_WIDTH
);
1819 if (x
== NULL
|| PyDict_SetItemString(d
, "INTERNAL_IMAGE_WIDTH", x
) < 0)
1824 x
= PyInt_FromLong(CL_INTRA
);
1825 if (x
== NULL
|| PyDict_SetItemString(d
, "INTRA", x
) < 0)
1830 x
= PyInt_FromLong(CL_JPEG
);
1831 if (x
== NULL
|| PyDict_SetItemString(d
, "JPEG", x
) < 0)
1835 #ifdef CL_JPEG_COSMO
1836 x
= PyInt_FromLong(CL_JPEG_COSMO
);
1837 if (x
== NULL
|| PyDict_SetItemString(d
, "JPEG_COSMO", x
) < 0)
1841 #ifdef CL_JPEG_ERROR
1842 x
= PyInt_FromLong(CL_JPEG_ERROR
);
1843 if (x
== NULL
|| PyDict_SetItemString(d
, "JPEG_ERROR", x
) < 0)
1847 #ifdef CL_JPEG_IMPACT
1848 x
= PyInt_FromLong(CL_JPEG_IMPACT
);
1849 if (x
== NULL
|| PyDict_SetItemString(d
, "JPEG_IMPACT", x
) < 0)
1853 #ifdef CL_JPEG_NUM_PARAMS
1854 x
= PyInt_FromLong(CL_JPEG_NUM_PARAMS
);
1855 if (x
== NULL
|| PyDict_SetItemString(d
, "JPEG_NUM_PARAMS", x
) < 0)
1859 #ifdef CL_JPEG_QUALITY_FACTOR
1860 x
= PyInt_FromLong(CL_JPEG_QUALITY_FACTOR
);
1861 if (x
== NULL
|| PyDict_SetItemString(d
, "JPEG_QUALITY_FACTOR", x
) < 0)
1865 #ifdef CL_JPEG_QUANTIZATION_TABLES
1866 x
= PyInt_FromLong(CL_JPEG_QUANTIZATION_TABLES
);
1867 if (x
== NULL
|| PyDict_SetItemString(d
, "JPEG_QUANTIZATION_TABLES", x
) < 0)
1871 #ifdef CL_JPEG_SOFTWARE
1872 x
= PyInt_FromLong(CL_JPEG_SOFTWARE
);
1873 if (x
== NULL
|| PyDict_SetItemString(d
, "JPEG_SOFTWARE", x
) < 0)
1877 #ifdef CL_JPEG_STREAM_HEADERS
1878 x
= PyInt_FromLong(CL_JPEG_STREAM_HEADERS
);
1879 if (x
== NULL
|| PyDict_SetItemString(d
, "JPEG_STREAM_HEADERS", x
) < 0)
1884 x
= PyInt_FromLong(CL_KEYFRAME
);
1885 if (x
== NULL
|| PyDict_SetItemString(d
, "KEYFRAME", x
) < 0)
1889 #ifdef CL_KEYFRAME_DISTANCE
1890 x
= PyInt_FromLong(CL_KEYFRAME_DISTANCE
);
1891 if (x
== NULL
|| PyDict_SetItemString(d
, "KEYFRAME_DISTANCE", x
) < 0)
1895 #ifdef CL_LAST_FRAME_INDEX
1896 x
= PyInt_FromLong(CL_LAST_FRAME_INDEX
);
1897 if (x
== NULL
|| PyDict_SetItemString(d
, "LAST_FRAME_INDEX", x
) < 0)
1902 x
= PyInt_FromLong(CL_LAYER
);
1903 if (x
== NULL
|| PyDict_SetItemString(d
, "LAYER", x
) < 0)
1907 #ifdef CL_LUMA_THRESHOLD
1908 x
= PyInt_FromLong(CL_LUMA_THRESHOLD
);
1909 if (x
== NULL
|| PyDict_SetItemString(d
, "LUMA_THRESHOLD", x
) < 0)
1913 #ifdef CL_MAX_NUMBER_OF_AUDIO_ALGORITHMS
1914 x
= PyInt_FromLong(CL_MAX_NUMBER_OF_AUDIO_ALGORITHMS
);
1915 if (x
== NULL
|| PyDict_SetItemString(d
, "MAX_NUMBER_OF_AUDIO_ALGORITHMS", x
) < 0)
1919 #ifdef CL_MAX_NUMBER_OF_FORMATS
1920 x
= PyInt_FromLong(CL_MAX_NUMBER_OF_FORMATS
);
1921 if (x
== NULL
|| PyDict_SetItemString(d
, "MAX_NUMBER_OF_FORMATS", x
) < 0)
1925 #ifdef CL_MAX_NUMBER_OF_ORIGINAL_FORMATS
1926 x
= PyInt_FromLong(CL_MAX_NUMBER_OF_ORIGINAL_FORMATS
);
1927 if (x
== NULL
|| PyDict_SetItemString(d
, "MAX_NUMBER_OF_ORIGINAL_FORMATS", x
) < 0)
1931 #ifdef CL_MAX_NUMBER_OF_PARAMS
1932 x
= PyInt_FromLong(CL_MAX_NUMBER_OF_PARAMS
);
1933 if (x
== NULL
|| PyDict_SetItemString(d
, "MAX_NUMBER_OF_PARAMS", x
) < 0)
1937 #ifdef CL_MAX_NUMBER_OF_VIDEO_ALGORITHMS
1938 x
= PyInt_FromLong(CL_MAX_NUMBER_OF_VIDEO_ALGORITHMS
);
1939 if (x
== NULL
|| PyDict_SetItemString(d
, "MAX_NUMBER_OF_VIDEO_ALGORITHMS", x
) < 0)
1944 x
= PyInt_FromLong(CL_MONO
);
1945 if (x
== NULL
|| PyDict_SetItemString(d
, "MONO", x
) < 0)
1949 #ifdef CL_MPEG1_AUDIO_AWARE
1950 x
= PyInt_FromLong(CL_MPEG1_AUDIO_AWARE
);
1951 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_AUDIO_AWARE", x
) < 0)
1955 #ifdef CL_MPEG1_AUDIO_LAYER
1956 x
= PyInt_FromLong(CL_MPEG1_AUDIO_LAYER
);
1957 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_AUDIO_LAYER", x
) < 0)
1961 #ifdef CL_MPEG1_AUDIO_LAYER_I
1962 x
= PyInt_FromLong(CL_MPEG1_AUDIO_LAYER_I
);
1963 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_AUDIO_LAYER_I", x
) < 0)
1967 #ifdef CL_MPEG1_AUDIO_LAYER_II
1968 x
= PyInt_FromLong(CL_MPEG1_AUDIO_LAYER_II
);
1969 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_AUDIO_LAYER_II", x
) < 0)
1973 #ifdef CL_MPEG1_AUDIO_MODE
1974 x
= PyInt_FromLong(CL_MPEG1_AUDIO_MODE
);
1975 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_AUDIO_MODE", x
) < 0)
1979 #ifdef CL_MPEG1_AUDIO_MODE_DUAL
1980 x
= PyInt_FromLong(CL_MPEG1_AUDIO_MODE_DUAL
);
1981 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_AUDIO_MODE_DUAL", x
) < 0)
1985 #ifdef CL_MPEG1_AUDIO_MODE_JOINT
1986 x
= PyInt_FromLong(CL_MPEG1_AUDIO_MODE_JOINT
);
1987 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_AUDIO_MODE_JOINT", x
) < 0)
1991 #ifdef CL_MPEG1_AUDIO_MODE_SINGLE
1992 x
= PyInt_FromLong(CL_MPEG1_AUDIO_MODE_SINGLE
);
1993 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_AUDIO_MODE_SINGLE", x
) < 0)
1997 #ifdef CL_MPEG1_AUDIO_MODE_STEREO
1998 x
= PyInt_FromLong(CL_MPEG1_AUDIO_MODE_STEREO
);
1999 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_AUDIO_MODE_STEREO", x
) < 0)
2003 #ifdef CL_MPEG1_AUDIO_SOFTWARE
2004 x
= PyInt_FromLong(CL_MPEG1_AUDIO_SOFTWARE
);
2005 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_AUDIO_SOFTWARE", x
) < 0)
2009 #ifdef CL_MPEG1_END_OF_STREAM
2010 x
= PyInt_FromLong(CL_MPEG1_END_OF_STREAM
);
2011 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_END_OF_STREAM", x
) < 0)
2015 #ifdef CL_MPEG1_ERROR
2016 x
= PyInt_FromLong(CL_MPEG1_ERROR
);
2017 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_ERROR", x
) < 0)
2021 #ifdef CL_MPEG1_NUM_PARAMS
2022 x
= PyInt_FromLong(CL_MPEG1_NUM_PARAMS
);
2023 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_NUM_PARAMS", x
) < 0)
2027 #ifdef CL_MPEG1_VIDEO_M
2028 x
= PyInt_FromLong(CL_MPEG1_VIDEO_M
);
2029 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_VIDEO_M", x
) < 0)
2033 #ifdef CL_MPEG1_VIDEO_MAX_MOTION_VECTOR_LENGTH_B_X
2034 x
= PyInt_FromLong(CL_MPEG1_VIDEO_MAX_MOTION_VECTOR_LENGTH_B_X
);
2035 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_VIDEO_MAX_MOTION_VECTOR_LENGTH_B_X", x
) < 0)
2039 #ifdef CL_MPEG1_VIDEO_MAX_MOTION_VECTOR_LENGTH_B_Y
2040 x
= PyInt_FromLong(CL_MPEG1_VIDEO_MAX_MOTION_VECTOR_LENGTH_B_Y
);
2041 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_VIDEO_MAX_MOTION_VECTOR_LENGTH_B_Y", x
) < 0)
2045 #ifdef CL_MPEG1_VIDEO_MAX_MOTION_VECTOR_LENGTH_P_X
2046 x
= PyInt_FromLong(CL_MPEG1_VIDEO_MAX_MOTION_VECTOR_LENGTH_P_X
);
2047 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_VIDEO_MAX_MOTION_VECTOR_LENGTH_P_X", x
) < 0)
2051 #ifdef CL_MPEG1_VIDEO_MAX_MOTION_VECTOR_LENGTH_P_Y
2052 x
= PyInt_FromLong(CL_MPEG1_VIDEO_MAX_MOTION_VECTOR_LENGTH_P_Y
);
2053 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_VIDEO_MAX_MOTION_VECTOR_LENGTH_P_Y", x
) < 0)
2057 #ifdef CL_MPEG1_VIDEO_N
2058 x
= PyInt_FromLong(CL_MPEG1_VIDEO_N
);
2059 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_VIDEO_N", x
) < 0)
2063 #ifdef CL_MPEG1_VIDEO_SOFTNESS
2064 x
= PyInt_FromLong(CL_MPEG1_VIDEO_SOFTNESS
);
2065 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_VIDEO_SOFTNESS", x
) < 0)
2069 #ifdef CL_MPEG1_VIDEO_SOFTNESS_MAXIMUM
2070 x
= PyInt_FromLong(CL_MPEG1_VIDEO_SOFTNESS_MAXIMUM
);
2071 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_VIDEO_SOFTNESS_MAXIMUM", x
) < 0)
2075 #ifdef CL_MPEG1_VIDEO_SOFTNESS_MEDIUM
2076 x
= PyInt_FromLong(CL_MPEG1_VIDEO_SOFTNESS_MEDIUM
);
2077 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_VIDEO_SOFTNESS_MEDIUM", x
) < 0)
2081 #ifdef CL_MPEG1_VIDEO_SOFTNESS_NONE
2082 x
= PyInt_FromLong(CL_MPEG1_VIDEO_SOFTNESS_NONE
);
2083 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_VIDEO_SOFTNESS_NONE", x
) < 0)
2087 #ifdef CL_MPEG1_VIDEO_SOFTWARE
2088 x
= PyInt_FromLong(CL_MPEG1_VIDEO_SOFTWARE
);
2089 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG1_VIDEO_SOFTWARE", x
) < 0)
2093 #ifdef CL_MPEG_VIDEO
2094 x
= PyInt_FromLong(CL_MPEG_VIDEO
);
2095 if (x
== NULL
|| PyDict_SetItemString(d
, "MPEG_VIDEO", x
) < 0)
2099 #ifdef CL_MULTIRATE_AWARE
2100 x
= PyInt_FromLong(CL_MULTIRATE_AWARE
);
2101 if (x
== NULL
|| PyDict_SetItemString(d
, "MULTIRATE_AWARE", x
) < 0)
2106 x
= PyInt_FromLong(CL_MVC1
);
2107 if (x
== NULL
|| PyDict_SetItemString(d
, "MVC1", x
) < 0)
2111 #ifdef CL_MVC1_SOFTWARE
2112 x
= PyInt_FromLong(CL_MVC1_SOFTWARE
);
2113 if (x
== NULL
|| PyDict_SetItemString(d
, "MVC1_SOFTWARE", x
) < 0)
2118 x
= PyInt_FromLong(CL_MVC2
);
2119 if (x
== NULL
|| PyDict_SetItemString(d
, "MVC2", x
) < 0)
2123 #ifdef CL_MVC2_BLENDING
2124 x
= PyInt_FromLong(CL_MVC2_BLENDING
);
2125 if (x
== NULL
|| PyDict_SetItemString(d
, "MVC2_BLENDING", x
) < 0)
2129 #ifdef CL_MVC2_BLENDING_OFF
2130 x
= PyInt_FromLong(CL_MVC2_BLENDING_OFF
);
2131 if (x
== NULL
|| PyDict_SetItemString(d
, "MVC2_BLENDING_OFF", x
) < 0)
2135 #ifdef CL_MVC2_BLENDING_ON
2136 x
= PyInt_FromLong(CL_MVC2_BLENDING_ON
);
2137 if (x
== NULL
|| PyDict_SetItemString(d
, "MVC2_BLENDING_ON", x
) < 0)
2141 #ifdef CL_MVC2_CHROMA_THRESHOLD
2142 x
= PyInt_FromLong(CL_MVC2_CHROMA_THRESHOLD
);
2143 if (x
== NULL
|| PyDict_SetItemString(d
, "MVC2_CHROMA_THRESHOLD", x
) < 0)
2147 #ifdef CL_MVC2_EDGE_THRESHOLD
2148 x
= PyInt_FromLong(CL_MVC2_EDGE_THRESHOLD
);
2149 if (x
== NULL
|| PyDict_SetItemString(d
, "MVC2_EDGE_THRESHOLD", x
) < 0)
2153 #ifdef CL_MVC2_ERROR
2154 x
= PyInt_FromLong(CL_MVC2_ERROR
);
2155 if (x
== NULL
|| PyDict_SetItemString(d
, "MVC2_ERROR", x
) < 0)
2159 #ifdef CL_MVC2_LUMA_THRESHOLD
2160 x
= PyInt_FromLong(CL_MVC2_LUMA_THRESHOLD
);
2161 if (x
== NULL
|| PyDict_SetItemString(d
, "MVC2_LUMA_THRESHOLD", x
) < 0)
2165 #ifdef CL_MVC2_SOFTWARE
2166 x
= PyInt_FromLong(CL_MVC2_SOFTWARE
);
2167 if (x
== NULL
|| PyDict_SetItemString(d
, "MVC2_SOFTWARE", x
) < 0)
2171 #ifdef CL_MVC3_QUALITY_LEVEL
2172 x
= PyInt_FromLong(CL_MVC3_QUALITY_LEVEL
);
2173 if (x
== NULL
|| PyDict_SetItemString(d
, "MVC3_QUALITY_LEVEL", x
) < 0)
2177 #ifdef CL_MVC3_SOFTWARE
2178 x
= PyInt_FromLong(CL_MVC3_SOFTWARE
);
2179 if (x
== NULL
|| PyDict_SetItemString(d
, "MVC3_SOFTWARE", x
) < 0)
2183 #ifdef CL_NEXT_NOT_AVAILABLE
2184 x
= PyInt_FromLong(CL_NEXT_NOT_AVAILABLE
);
2185 if (x
== NULL
|| PyDict_SetItemString(d
, "NEXT_NOT_AVAILABLE", x
) < 0)
2189 #ifdef CL_NOISE_MARGIN
2190 x
= PyInt_FromLong(CL_NOISE_MARGIN
);
2191 if (x
== NULL
|| PyDict_SetItemString(d
, "NOISE_MARGIN", x
) < 0)
2196 x
= PyInt_FromLong(CL_NONE
);
2197 if (x
== NULL
|| PyDict_SetItemString(d
, "NONE", x
) < 0)
2201 #ifdef CL_NUMBER_OF_FORMATS
2202 x
= PyInt_FromLong(CL_NUMBER_OF_FORMATS
);
2203 if (x
== NULL
|| PyDict_SetItemString(d
, "NUMBER_OF_FORMATS", x
) < 0)
2207 #ifdef CL_NUMBER_OF_FRAMES
2208 x
= PyInt_FromLong(CL_NUMBER_OF_FRAMES
);
2209 if (x
== NULL
|| PyDict_SetItemString(d
, "NUMBER_OF_FRAMES", x
) < 0)
2213 #ifdef CL_NUMBER_OF_PARAMS
2214 x
= PyInt_FromLong(CL_NUMBER_OF_PARAMS
);
2215 if (x
== NULL
|| PyDict_SetItemString(d
, "NUMBER_OF_PARAMS", x
) < 0)
2219 #ifdef CL_NUMBER_OF_PARAMS_FREEZE
2220 x
= PyInt_FromLong(CL_NUMBER_OF_PARAMS_FREEZE
);
2221 if (x
== NULL
|| PyDict_SetItemString(d
, "NUMBER_OF_PARAMS_FREEZE", x
) < 0)
2225 #ifdef CL_NUMBER_OF_VIDEO_FORMATS
2226 x
= PyInt_FromLong(CL_NUMBER_OF_VIDEO_FORMATS
);
2227 if (x
== NULL
|| PyDict_SetItemString(d
, "NUMBER_OF_VIDEO_FORMATS", x
) < 0)
2231 #ifdef CL_ORIENTATION
2232 x
= PyInt_FromLong(CL_ORIENTATION
);
2233 if (x
== NULL
|| PyDict_SetItemString(d
, "ORIENTATION", x
) < 0)
2237 #ifdef CL_ORIGINAL_FORMAT
2238 x
= PyInt_FromLong(CL_ORIGINAL_FORMAT
);
2239 if (x
== NULL
|| PyDict_SetItemString(d
, "ORIGINAL_FORMAT", x
) < 0)
2243 #ifdef CL_PARAM_OUT_OF_RANGE
2244 x
= PyInt_FromLong(CL_PARAM_OUT_OF_RANGE
);
2245 if (x
== NULL
|| PyDict_SetItemString(d
, "PARAM_OUT_OF_RANGE", x
) < 0)
2249 #ifdef CL_PIXEL_ASPECT
2250 x
= PyInt_FromLong(CL_PIXEL_ASPECT
);
2251 if (x
== NULL
|| PyDict_SetItemString(d
, "PIXEL_ASPECT", x
) < 0)
2256 x
= PyInt_FromLong(CL_PREDICTED
);
2257 if (x
== NULL
|| PyDict_SetItemString(d
, "PREDICTED", x
) < 0)
2262 x
= PyInt_FromLong(CL_PREROLL
);
2263 if (x
== NULL
|| PyDict_SetItemString(d
, "PREROLL", x
) < 0)
2267 #ifdef CL_QUALITY_FACTOR
2268 x
= PyInt_FromLong(CL_QUALITY_FACTOR
);
2269 if (x
== NULL
|| PyDict_SetItemString(d
, "QUALITY_FACTOR", x
) < 0)
2273 #ifdef CL_QUALITY_LEVEL
2274 x
= PyInt_FromLong(CL_QUALITY_LEVEL
);
2275 if (x
== NULL
|| PyDict_SetItemString(d
, "QUALITY_LEVEL", x
) < 0)
2279 #ifdef CL_QUALITY_SPATIAL
2280 x
= PyInt_FromLong(CL_QUALITY_SPATIAL
);
2281 if (x
== NULL
|| PyDict_SetItemString(d
, "QUALITY_SPATIAL", x
) < 0)
2285 #ifdef CL_QUALITY_TEMPORAL
2286 x
= PyInt_FromLong(CL_QUALITY_TEMPORAL
);
2287 if (x
== NULL
|| PyDict_SetItemString(d
, "QUALITY_TEMPORAL", x
) < 0)
2291 #ifdef CL_QUANTIZATION_TABLES
2292 x
= PyInt_FromLong(CL_QUANTIZATION_TABLES
);
2293 if (x
== NULL
|| PyDict_SetItemString(d
, "QUANTIZATION_TABLES", x
) < 0)
2297 #ifdef CL_RANGE_VALUE
2298 x
= PyInt_FromLong(CL_RANGE_VALUE
);
2299 if (x
== NULL
|| PyDict_SetItemString(d
, "RANGE_VALUE", x
) < 0)
2304 x
= PyInt_FromLong(CL_RGB
);
2305 if (x
== NULL
|| PyDict_SetItemString(d
, "RGB", x
) < 0)
2310 x
= PyInt_FromLong(CL_RGB332
);
2311 if (x
== NULL
|| PyDict_SetItemString(d
, "RGB332", x
) < 0)
2316 x
= PyInt_FromLong(CL_RGB8
);
2317 if (x
== NULL
|| PyDict_SetItemString(d
, "RGB8", x
) < 0)
2322 x
= PyInt_FromLong(CL_RGBA
);
2323 if (x
== NULL
|| PyDict_SetItemString(d
, "RGBA", x
) < 0)
2328 x
= PyInt_FromLong(CL_RGBX
);
2329 if (x
== NULL
|| PyDict_SetItemString(d
, "RGBX", x
) < 0)
2334 x
= PyInt_FromLong(CL_RLE
);
2335 if (x
== NULL
|| PyDict_SetItemString(d
, "RLE", x
) < 0)
2340 x
= PyInt_FromLong(CL_RLE24
);
2341 if (x
== NULL
|| PyDict_SetItemString(d
, "RLE24", x
) < 0)
2345 #ifdef CL_RLE24_SOFTWARE
2346 x
= PyInt_FromLong(CL_RLE24_SOFTWARE
);
2347 if (x
== NULL
|| PyDict_SetItemString(d
, "RLE24_SOFTWARE", x
) < 0)
2351 #ifdef CL_RLE_SOFTWARE
2352 x
= PyInt_FromLong(CL_RLE_SOFTWARE
);
2353 if (x
== NULL
|| PyDict_SetItemString(d
, "RLE_SOFTWARE", x
) < 0)
2358 x
= PyInt_FromLong(CL_RTR
);
2359 if (x
== NULL
|| PyDict_SetItemString(d
, "RTR", x
) < 0)
2364 x
= PyInt_FromLong(CL_RTR1
);
2365 if (x
== NULL
|| PyDict_SetItemString(d
, "RTR1", x
) < 0)
2369 #ifdef CL_RTR_QUALITY_LEVEL
2370 x
= PyInt_FromLong(CL_RTR_QUALITY_LEVEL
);
2371 if (x
== NULL
|| PyDict_SetItemString(d
, "RTR_QUALITY_LEVEL", x
) < 0)
2375 #ifdef CL_SAMPLES_PER_TILE
2376 x
= PyInt_FromLong(CL_SAMPLES_PER_TILE
);
2377 if (x
== NULL
|| PyDict_SetItemString(d
, "SAMPLES_PER_TILE", x
) < 0)
2381 #ifdef CL_SCHEME_BUSY
2382 x
= PyInt_FromLong(CL_SCHEME_BUSY
);
2383 if (x
== NULL
|| PyDict_SetItemString(d
, "SCHEME_BUSY", x
) < 0)
2387 #ifdef CL_SCHEME_NOT_AVAILABLE
2388 x
= PyInt_FromLong(CL_SCHEME_NOT_AVAILABLE
);
2389 if (x
== NULL
|| PyDict_SetItemString(d
, "SCHEME_NOT_AVAILABLE", x
) < 0)
2394 x
= PyInt_FromLong(CL_SPEED
);
2395 if (x
== NULL
|| PyDict_SetItemString(d
, "SPEED", x
) < 0)
2399 #ifdef CL_STEREO_INTERLEAVED
2400 x
= PyInt_FromLong(CL_STEREO_INTERLEAVED
);
2401 if (x
== NULL
|| PyDict_SetItemString(d
, "STEREO_INTERLEAVED", x
) < 0)
2405 #ifdef CL_STREAM_HEADERS
2406 x
= PyInt_FromLong(CL_STREAM_HEADERS
);
2407 if (x
== NULL
|| PyDict_SetItemString(d
, "STREAM_HEADERS", x
) < 0)
2411 #ifdef CL_TILE_THRESHOLD
2412 x
= PyInt_FromLong(CL_TILE_THRESHOLD
);
2413 if (x
== NULL
|| PyDict_SetItemString(d
, "TILE_THRESHOLD", x
) < 0)
2418 x
= PyInt_FromLong(CL_TOP_DOWN
);
2419 if (x
== NULL
|| PyDict_SetItemString(d
, "TOP_DOWN", x
) < 0)
2424 x
= PyInt_FromLong(CL_ULAW
);
2425 if (x
== NULL
|| PyDict_SetItemString(d
, "ULAW", x
) < 0)
2429 #ifdef CL_UNCOMPRESSED
2430 x
= PyInt_FromLong(CL_UNCOMPRESSED
);
2431 if (x
== NULL
|| PyDict_SetItemString(d
, "UNCOMPRESSED", x
) < 0)
2435 #ifdef CL_UNCOMPRESSED_AUDIO
2436 x
= PyInt_FromLong(CL_UNCOMPRESSED_AUDIO
);
2437 if (x
== NULL
|| PyDict_SetItemString(d
, "UNCOMPRESSED_AUDIO", x
) < 0)
2441 #ifdef CL_UNCOMPRESSED_VIDEO
2442 x
= PyInt_FromLong(CL_UNCOMPRESSED_VIDEO
);
2443 if (x
== NULL
|| PyDict_SetItemString(d
, "UNCOMPRESSED_VIDEO", x
) < 0)
2447 #ifdef CL_UNKNOWN_SCHEME
2448 x
= PyInt_FromLong(CL_UNKNOWN_SCHEME
);
2449 if (x
== NULL
|| PyDict_SetItemString(d
, "UNKNOWN_SCHEME", x
) < 0)
2454 x
= PyInt_FromLong(CL_VIDEO
);
2455 if (x
== NULL
|| PyDict_SetItemString(d
, "VIDEO", x
) < 0)
2460 x
= PyInt_FromLong(CL_Y
);
2461 if (x
== NULL
|| PyDict_SetItemString(d
, "Y", x
) < 0)
2466 x
= PyInt_FromLong(CL_YCbCr
);
2467 if (x
== NULL
|| PyDict_SetItemString(d
, "YCbCr", x
) < 0)
2472 x
= PyInt_FromLong(CL_YCbCr422
);
2473 if (x
== NULL
|| PyDict_SetItemString(d
, "YCbCr422", x
) < 0)
2477 #ifdef CL_YCbCr422DC
2478 x
= PyInt_FromLong(CL_YCbCr422DC
);
2479 if (x
== NULL
|| PyDict_SetItemString(d
, "YCbCr422DC", x
) < 0)
2483 #ifdef CL_YCbCr422HC
2484 x
= PyInt_FromLong(CL_YCbCr422HC
);
2485 if (x
== NULL
|| PyDict_SetItemString(d
, "YCbCr422HC", x
) < 0)
2490 x
= PyInt_FromLong(CL_YUV
);
2491 if (x
== NULL
|| PyDict_SetItemString(d
, "YUV", x
) < 0)
2496 x
= PyInt_FromLong(CL_YUV422
);
2497 if (x
== NULL
|| PyDict_SetItemString(d
, "YUV422", x
) < 0)
2502 x
= PyInt_FromLong(CL_YUV422DC
);
2503 if (x
== NULL
|| PyDict_SetItemString(d
, "YUV422DC", x
) < 0)
2508 x
= PyInt_FromLong(CL_YUV422HC
);
2509 if (x
== NULL
|| PyDict_SetItemString(d
, "YUV422HC", x
) < 0)
2514 x
= PyInt_FromLong(AWCMP_STEREO
);
2515 if (x
== NULL
|| PyDict_SetItemString(d
, "AWCMP_STEREO", x
) < 0)
2519 #ifdef AWCMP_JOINT_STEREO
2520 x
= PyInt_FromLong(AWCMP_JOINT_STEREO
);
2521 if (x
== NULL
|| PyDict_SetItemString(d
, "AWCMP_JOINT_STEREO", x
) < 0)
2525 #ifdef AWCMP_INDEPENDENT
2526 x
= PyInt_FromLong(AWCMP_INDEPENDENT
);
2527 if (x
== NULL
|| PyDict_SetItemString(d
, "AWCMP_INDEPENDENT", x
) < 0)
2531 #ifdef AWCMP_FIXED_RATE
2532 x
= PyInt_FromLong(AWCMP_FIXED_RATE
);
2533 if (x
== NULL
|| PyDict_SetItemString(d
, "AWCMP_FIXED_RATE", x
) < 0)
2537 #ifdef AWCMP_CONST_QUAL
2538 x
= PyInt_FromLong(AWCMP_CONST_QUAL
);
2539 if (x
== NULL
|| PyDict_SetItemString(d
, "AWCMP_CONST_QUAL", x
) < 0)
2543 #ifdef AWCMP_LOSSLESS
2544 x
= PyInt_FromLong(AWCMP_LOSSLESS
);
2545 if (x
== NULL
|| PyDict_SetItemString(d
, "AWCMP_LOSSLESS", x
) < 0)
2549 #ifdef AWCMP_MPEG_LAYER_I
2550 x
= PyInt_FromLong(AWCMP_MPEG_LAYER_I
);
2551 if (x
== NULL
|| PyDict_SetItemString(d
, "AWCMP_MPEG_LAYER_I", x
) < 0)
2555 #ifdef AWCMP_MPEG_LAYER_II
2556 x
= PyInt_FromLong(AWCMP_MPEG_LAYER_II
);
2557 if (x
== NULL
|| PyDict_SetItemString(d
, "AWCMP_MPEG_LAYER_II", x
) < 0)
2562 (void) clSetErrorHandler(cl_ErrorHandler
);