mirror of
				https://github.com/python/cpython.git
				synced 2025-11-04 07:31:38 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			236 lines
		
	
	
	
		
			5.9 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			236 lines
		
	
	
	
		
			5.9 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable file
		
	
	
	
	
#
 | 
						|
# cl.h - Compression Library typedefs and prototypes
 | 
						|
#
 | 
						|
#   01/07/92    Cleanup by Brian Knittel
 | 
						|
#   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
 | 
						|
YUV422DC = 7                            # 4:1:1 sampling
 | 
						|
YCbCr422DC = 7                          # 4:1:1 sampling
 | 
						|
 | 
						|
BEST_FIT = -1
 | 
						|
 | 
						|
def BytesPerSample(s):
 | 
						|
    if s in (MONO, YUV):
 | 
						|
        return 2
 | 
						|
    elif s == STEREO_INTERLEAVED:
 | 
						|
        return 4
 | 
						|
    else:
 | 
						|
        return 0
 | 
						|
 | 
						|
def BytesPerPixel(f):
 | 
						|
    if f in (RGB, YUV):
 | 
						|
        return 3
 | 
						|
    elif f in (RGBX, RGBA):
 | 
						|
        return 4
 | 
						|
    elif f in (RGB332, GRAYSCALE):
 | 
						|
        return 1
 | 
						|
    else:
 | 
						|
        return 2
 | 
						|
 | 
						|
def AudioFormatName(f):
 | 
						|
    if f == MONO:
 | 
						|
        return 'MONO'
 | 
						|
    elif f == STEREO_INTERLEAVED:
 | 
						|
        return 'STEREO_INTERLEAVED'
 | 
						|
    else:
 | 
						|
        return 'Not a valid format'
 | 
						|
 | 
						|
def VideoFormatName(f):
 | 
						|
    if f == RGB:
 | 
						|
        return 'RGB'
 | 
						|
    elif f == RGBX:
 | 
						|
        return 'RGBX'
 | 
						|
    elif f == RGBA:
 | 
						|
        return 'RGBA'
 | 
						|
    elif f == RGB332:
 | 
						|
        return 'RGB332'
 | 
						|
    elif f == GRAYSCALE:
 | 
						|
        return 'GRAYSCALE'
 | 
						|
    elif f == YUV:
 | 
						|
        return 'YUV'
 | 
						|
    elif f == YUV422:
 | 
						|
        return 'YUV422'
 | 
						|
    elif f == YUV422DC:
 | 
						|
        return 'YUV422DC'
 | 
						|
    else:
 | 
						|
        return 'Not a valid format'
 | 
						|
 | 
						|
MAX_NUMBER_OF_AUDIO_ALGORITHMS = 32
 | 
						|
MAX_NUMBER_OF_VIDEO_ALGORITHMS = 32
 | 
						|
 | 
						|
#
 | 
						|
# Algorithm types
 | 
						|
#
 | 
						|
AUDIO = 0
 | 
						|
VIDEO = 1
 | 
						|
 | 
						|
def AlgorithmNumber(scheme):
 | 
						|
    return scheme & 0x7fff
 | 
						|
def AlgorithmType(scheme):
 | 
						|
    return (scheme >> 15) & 1
 | 
						|
def Algorithm(type, n):
 | 
						|
    return n | ((type & 1) << 15)
 | 
						|
 | 
						|
#
 | 
						|
# "compressionScheme" argument values
 | 
						|
#
 | 
						|
UNKNOWN_SCHEME = -1
 | 
						|
 | 
						|
UNCOMPRESSED_AUDIO = Algorithm(AUDIO, 0)
 | 
						|
G711_ULAW = Algorithm(AUDIO, 1)
 | 
						|
ULAW = Algorithm(AUDIO, 1)
 | 
						|
G711_ALAW = Algorithm(AUDIO, 2)
 | 
						|
ALAW = Algorithm(AUDIO, 2)
 | 
						|
AWARE_MPEG_AUDIO = Algorithm(AUDIO, 3)
 | 
						|
AWARE_MULTIRATE = Algorithm(AUDIO, 4)
 | 
						|
 | 
						|
UNCOMPRESSED = Algorithm(VIDEO, 0)
 | 
						|
UNCOMPRESSED_VIDEO = Algorithm(VIDEO, 0)
 | 
						|
RLE = Algorithm(VIDEO, 1)
 | 
						|
JPEG = Algorithm(VIDEO, 2)
 | 
						|
MPEG_VIDEO = Algorithm(VIDEO, 3)
 | 
						|
MVC1 = Algorithm(VIDEO, 4)
 | 
						|
RTR = Algorithm(VIDEO, 5)
 | 
						|
RTR1 = Algorithm(VIDEO, 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
 | 
						|
FRAME_TYPE = 13
 | 
						|
ALGORITHM_ID = 14
 | 
						|
ALGORITHM_VERSION = 15
 | 
						|
ORIENTATION = 16
 | 
						|
NUMBER_OF_FRAMES = 17
 | 
						|
SPEED = 18
 | 
						|
LAST_FRAME_INDEX = 19
 | 
						|
NUMBER_OF_PARAMS = 20
 | 
						|
 | 
						|
# JPEG Specific Parameters
 | 
						|
QUALITY_FACTOR = NUMBER_OF_PARAMS + 0
 | 
						|
 | 
						|
# MPEG Specific Parameters
 | 
						|
END_OF_SEQUENCE = NUMBER_OF_PARAMS + 0
 | 
						|
 | 
						|
# RTR Specific Parameters
 | 
						|
QUALITY_LEVEL = NUMBER_OF_PARAMS + 0
 | 
						|
ZOOM_X = NUMBER_OF_PARAMS + 1
 | 
						|
ZOOM_Y = NUMBER_OF_PARAMS + 2
 | 
						|
 | 
						|
#
 | 
						|
# 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
 | 
						|
 | 
						|
#
 | 
						|
# Algorithm Functionality
 | 
						|
#
 | 
						|
DECOMPRESSOR = 1
 | 
						|
COMPRESSOR = 2
 | 
						|
CODEC = 3
 | 
						|
 | 
						|
#
 | 
						|
# Buffer types
 | 
						|
#
 | 
						|
NONE = 0
 | 
						|
FRAME = 1
 | 
						|
DATA = 2
 | 
						|
 | 
						|
#
 | 
						|
# Frame types
 | 
						|
#
 | 
						|
NONE = 0
 | 
						|
KEYFRAME = 1
 | 
						|
INTRA = 1
 | 
						|
PREDICTED = 2
 | 
						|
BIDIRECTIONAL = 3
 | 
						|
 | 
						|
#
 | 
						|
# Orientations
 | 
						|
#
 | 
						|
TOP_DOWN = 0
 | 
						|
BOTTOM_UP = 1
 | 
						|
 | 
						|
#
 | 
						|
# SGI Proprietary Algorithm Header Start Code
 | 
						|
#
 | 
						|
HEADER_START_CODE = 0xc1C0DEC
 | 
						|
 | 
						|
#
 | 
						|
# error codes
 | 
						|
#
 | 
						|
 | 
						|
BAD_NO_BUFFERSPACE =  -2                # no space for internal buffers
 | 
						|
BAD_PVBUFFER =  -3                      # param/val buffer doesn't make sense
 | 
						|
BAD_BUFFERLENGTH_NEG =  -4              # negative buffer length
 | 
						|
BAD_BUFFERLENGTH_ODD =  -5              # odd length parameter/value buffer
 | 
						|
BAD_PARAM =  -6                         # invalid parameter
 | 
						|
BAD_COMPRESSION_SCHEME =  -7            # compression scheme parameter invalid
 | 
						|
BAD_COMPRESSOR_HANDLE =  -8             # compression handle parameter invalid
 | 
						|
BAD_COMPRESSOR_HANDLE_POINTER = -9      # compression handle pointer invalid
 | 
						|
BAD_BUFFER_HANDLE = -10                 # buffer handle invalid
 | 
						|
BAD_BUFFER_QUERY_SIZE = -11             # buffer query size too large
 | 
						|
JPEG_ERROR = -12                        # error from libjpeg
 | 
						|
BAD_FRAME_SIZE = -13                    # frame size invalid
 | 
						|
PARAM_OUT_OF_RANGE = -14                # parameter out of range
 | 
						|
ADDED_ALGORITHM_ERROR = -15             # added algorithm had a unique error
 | 
						|
BAD_ALGORITHM_TYPE = -16                # bad algorithm type
 | 
						|
BAD_ALGORITHM_NAME = -17                # bad algorithm name
 | 
						|
BAD_BUFFERING = -18                     # bad buffering calls
 | 
						|
BUFFER_NOT_CREATED = -19                # buffer not created
 | 
						|
BAD_BUFFER_EXISTS = -20                 # buffer already created
 | 
						|
BAD_INTERNAL_FORMAT = -21               # invalid internal format
 | 
						|
BAD_BUFFER_POINTER = -22                # invalid buffer pointer
 | 
						|
FRAME_BUFFER_SIZE_ZERO = -23            # frame buffer has zero size
 | 
						|
BAD_STREAM_HEADER = -24                 # invalid stream header
 | 
						|
 | 
						|
BAD_LICENSE = -25                       # netls license not valid
 | 
						|
AWARE_ERROR = -26                       # error from libawcmp
 |