Sjoerd Mullender | 4fff13f | 1992-12-14 13:16:55 +0000 | [diff] [blame] | 1 | # |
| 2 | # cl.h - Compression Library typedefs and prototypes |
| 3 | # |
| 4 | # 02/18/92 Original Version by Brian Knittel |
| 5 | # |
Sjoerd Mullender | e7daaa3 | 1992-09-24 10:40:03 +0000 | [diff] [blame] | 6 | |
Sjoerd Mullender | 4fff13f | 1992-12-14 13:16:55 +0000 | [diff] [blame] | 7 | # |
| 8 | # originalFormat parameter values |
| 9 | # |
| 10 | MAX_NUMBER_OF_ORIGINAL_FORMATS = (32) |
Sjoerd Mullender | e7daaa3 | 1992-09-24 10:40:03 +0000 | [diff] [blame] | 11 | |
Sjoerd Mullender | 4fff13f | 1992-12-14 13:16:55 +0000 | [diff] [blame] | 12 | # Audio |
| 13 | MONO = (0) |
| 14 | STEREO_INTERLEAVED = (1) |
Sjoerd Mullender | e7daaa3 | 1992-09-24 10:40:03 +0000 | [diff] [blame] | 15 | |
Sjoerd Mullender | 4fff13f | 1992-12-14 13:16:55 +0000 | [diff] [blame] | 16 | # Video |
| 17 | # YUV is defined to be the same thing as YCrCb (luma and two chroma components). |
| 18 | # 422 is appended to YUV (or YCrCb) if the chroma is sub-sampled by 2 |
| 19 | # horizontally, packed as U Y1 V Y2 (byte order). |
| 20 | # 422HC is appended to YUV (or YCrCb) if the chroma is sub-sampled by 2 |
| 21 | # vertically in addition to horizontally, and is packed the same as |
| 22 | # 422 except that U & V are not valid on the second line. |
| 23 | # |
| 24 | RGB = (0) |
| 25 | RGBX = (1) |
| 26 | RGBA = (2) |
| 27 | RGB332 = (3) |
| 28 | |
| 29 | GRAYSCALE = (4) |
| 30 | Y = (4) |
| 31 | YUV = (5) |
| 32 | YCbCr = (5) |
| 33 | YUV422 = (6) # 4:2:2 sampling |
| 34 | YCbCr422 = (6) # 4:2:2 sampling |
| 35 | YUV422HC = (7) # 4:1:1 sampling |
| 36 | YCbCr422HC = (7) # 4:1:1 sampling |
| 37 | |
| 38 | MAX_NUMBER_OF_AUDIO_ALGORITHMS = (32) |
| 39 | MAX_NUMBER_OF_VIDEO_ALGORITHMS = (32) |
| 40 | |
| 41 | # |
| 42 | # "compressionScheme" argument values |
| 43 | # |
| 44 | UNCOMPRESSED_AUDIO = (0) |
| 45 | G711_ULAW = (1) |
| 46 | ULAW = (1) |
| 47 | G711_ALAW = (2) |
| 48 | ALAW = (2) |
| 49 | G722 = (3) |
| 50 | |
| 51 | UNCOMPRESSED = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 0) |
| 52 | UNCOMPRESSED_VIDEO = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 0) |
| 53 | RLE = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 1) |
| 54 | JPEG = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 2) |
| 55 | MPEG_VIDEO = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 3) |
| 56 | MVC1 = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 4) |
| 57 | RTR = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 5) |
| 58 | RTR1 = (MAX_NUMBER_OF_AUDIO_ALGORITHMS + 5) |
Sjoerd Mullender | e7daaa3 | 1992-09-24 10:40:03 +0000 | [diff] [blame] | 59 | |
| 60 | # |
| 61 | # Parameters |
| 62 | # |
Sjoerd Mullender | 4fff13f | 1992-12-14 13:16:55 +0000 | [diff] [blame] | 63 | MAX_NUMBER_OF_PARAMS = (256) |
| 64 | # Default Parameters |
| 65 | IMAGE_WIDTH = (0) |
| 66 | IMAGE_HEIGHT = (1) |
| 67 | ORIGINAL_FORMAT = (2) |
| 68 | INTERNAL_FORMAT = (3) |
| 69 | COMPONENTS = (4) |
| 70 | BITS_PER_COMPONENT = (5) |
| 71 | FRAME_RATE = (6) |
| 72 | COMPRESSION_RATIO = (7) |
| 73 | EXACT_COMPRESSION_RATIO = (8) |
| 74 | FRAME_BUFFER_SIZE = (9) |
| 75 | COMPRESSED_BUFFER_SIZE = (10) |
| 76 | BLOCK_SIZE = (11) |
| 77 | PREROLL = (12) |
| 78 | UNIQUE = (13) |
| 79 | FRAME_TYPE = (14) |
| 80 | OVERWRITE_MODE = (15) |
| 81 | NUMBER_OF_PARAMS = (16) |
Sjoerd Mullender | e7daaa3 | 1992-09-24 10:40:03 +0000 | [diff] [blame] | 82 | |
Sjoerd Mullender | 4fff13f | 1992-12-14 13:16:55 +0000 | [diff] [blame] | 83 | # JPEG Specific Parameters |
| 84 | QUALITY_FACTOR = (NUMBER_OF_PARAMS + 0) |
Sjoerd Mullender | e7daaa3 | 1992-09-24 10:40:03 +0000 | [diff] [blame] | 85 | |
Sjoerd Mullender | 4fff13f | 1992-12-14 13:16:55 +0000 | [diff] [blame] | 86 | # MPEG Specific Parameters |
| 87 | SPEED = (NUMBER_OF_PARAMS + 0) |
| 88 | ACTUAL_FRAME_INDEX = (NUMBER_OF_PARAMS + 1) |
| 89 | |
| 90 | # RTR Specific Parameters |
| 91 | QUALITY_LEVEL = (NUMBER_OF_PARAMS + 0) |
| 92 | |
| 93 | # #define clTypeIsFloat(v) (*(float *)&(v)) |
| 94 | # #define clTypeIsLong(v) (*(long *)&(v)) |
| 95 | # |
| 96 | # RATIO_1 = (65536.0) |
| 97 | # #define clFloatToRatio(f) ((long)((float)(f) * RATIO_1)) |
| 98 | # #define clRatioToFloat(f) ((float)(f) / RATIO_1) |
| 99 | # RATIO_SHIFT = (16) |
| 100 | # #define clRatioMul(m, r) ((m) * (r)) |
| 101 | # #define clRatioToLong(r) ((r) >> RATIO_SHIFT) |
| 102 | # #define clLongToRatio(r) ((r) << RATIO_SHIFT) |
Sjoerd Mullender | e7daaa3 | 1992-09-24 10:40:03 +0000 | [diff] [blame] | 103 | |
| 104 | # |
| 105 | # Parameter value types |
| 106 | # |
Sjoerd Mullender | 4fff13f | 1992-12-14 13:16:55 +0000 | [diff] [blame] | 107 | ENUM_VALUE = (0) # only certain constant values are valid |
| 108 | RANGE_VALUE = (1) # any value in a given range is valid |
| 109 | FLOATING_ENUM_VALUE = (2) # only certain constant floating point values are valid |
| 110 | FLOATING_RANGE_VALUE = (3) # any value in a given floating point range is valid |
| 111 | POINTER = (4) # any legal pointer is valid |
Sjoerd Mullender | e7daaa3 | 1992-09-24 10:40:03 +0000 | [diff] [blame] | 112 | |
Sjoerd Mullender | 4fff13f | 1992-12-14 13:16:55 +0000 | [diff] [blame] | 113 | # |
| 114 | # Algorithm types |
| 115 | # |
| 116 | AUDIO = (0) |
| 117 | VIDEO = (1) |
Sjoerd Mullender | e7daaa3 | 1992-09-24 10:40:03 +0000 | [diff] [blame] | 118 | |
Sjoerd Mullender | 4fff13f | 1992-12-14 13:16:55 +0000 | [diff] [blame] | 119 | # |
| 120 | # Algorithm Functionality |
| 121 | # |
| 122 | DECOMPRESSOR = (1) |
| 123 | COMPRESSOR = (2) |
| 124 | CODEC = (3) |
Sjoerd Mullender | e7daaa3 | 1992-09-24 10:40:03 +0000 | [diff] [blame] | 125 | |
Sjoerd Mullender | 4fff13f | 1992-12-14 13:16:55 +0000 | [diff] [blame] | 126 | # |
| 127 | # Buffer types |
| 128 | # |
| 129 | NONE = (0) |
| 130 | FRAME = (1) |
| 131 | DATA = (2) |
Sjoerd Mullender | e7daaa3 | 1992-09-24 10:40:03 +0000 | [diff] [blame] | 132 | |
| 133 | # |
| 134 | # error codes |
| 135 | # |
Sjoerd Mullender | 4fff13f | 1992-12-14 13:16:55 +0000 | [diff] [blame] | 136 | BAD_NOT_IMPLEMENTED = ( -1) # not impimented yet |
| 137 | BAD_NO_BUFFERSPACE = ( -2) # no space for internal buffers |
| 138 | BAD_BUFFER_NULL = ( -3) # null buffer pointer |
| 139 | BAD_COUNT_NEG = ( -4) # negative count |
| 140 | BAD_PVBUFFER = ( -5) # param/val buffer doesn't make sense |
| 141 | BAD_BUFFERLENGTH_NEG = ( -6) # negative buffer length |
| 142 | BAD_BUFFERLENGTH_ODD = ( -7) # odd length parameter/value buffer |
| 143 | BAD_PARAM = ( -8) # invalid parameter |
| 144 | BAD_COMPRESSION_SCHEME = ( -9) # compression scheme parameter invalid |
| 145 | BAD_COMPRESSOR_HANDLE = (-10) # compression handle parameter invalid |
| 146 | BAD_COMPRESSOR_HANDLE_POINTER = (-11) # compression handle pointer invalid |
| 147 | BAD_BUFFER_HANDLE = (-12) # callback function invalid |
| 148 | BAD_ALGORITHM_INFO = (-13) # algorithm info invalid |
| 149 | BAD_CL_BAD_WIDTH_OR_HEIGHT = (-14) # compressor width or height invalid |
| 150 | BAD_POINTER_FROM_CALLBACK_FUNCTION = (-15) # pointer from callback invalid |
| 151 | JPEG_ERROR = (-16) # error from libjpeg |
| 152 | NO_SEMAPHORE = (-17) # could not get semaphore |
| 153 | BAD_WIDTH_OR_HEIGHT = (-18) # width or height invalid |
| 154 | BAD_FRAME_COUNT = (-19) # frame count invalid |
| 155 | BAD_FRAME_INDEX = (-20) # frame index invalid |
| 156 | BAD_FRAME_BUFFER = (-21) # frame buffer pointer invalid |
| 157 | BAD_FRAME_SIZE = (-22) # frame size invalid |
| 158 | BAD_DATA_BUFFER = (-23) # data buffer pointer invalid |
| 159 | BAD_DATA_SIZE = (-24) # data buffer size invalid |
| 160 | BAD_TOTAL_NUMBER_OF_FRAMES = (-25) # total number of frames invalid |
| 161 | BAD_IMAGE_FORMAT = (-26) # image format invalid |
| 162 | BAD_BITS_PER_COMPONENT = (-27) # bits per component invalid |
| 163 | BAD_FRAME_RATE = (-28) # frame rate invalid |
| 164 | BAD_INSUFFICIENT_DATA_FROM_CALLBACK_FUNCTION = (-29) # insufficient data from callback invalid |
| 165 | PARAM_OUT_OF_RANGE = (-30) # parameter out of range |
| 166 | ADDED_ALGORITHM_ERROR = (-31) # added algorithm had a unique error |
| 167 | BAD_ALGORITHM_TYPE = (-32) # bad algorithm type |
| 168 | BAD_ALGORITHM_NAME = (-33) # bad algorithm name |
| 169 | BAD_FRAME_INDEXING = (-34) # bad frame indexing |
| 170 | BAD_BUFFERING = (-35) # bad buffering calls |
| 171 | BUFFER_NOT_CREATED = (-36) # buffer not created |
| 172 | BAD_BUFFER_EXISTS = (-37) # buffer already created |