18.12 jpeg -- Read and write JPEG files

Availability: IRIX.

The module jpeg provides access to the jpeg compressor and decompressor written by the Independent JPEG Group (IJG). JPEG is a standard for compressing pictures; it is defined in ISO 10918. For details on JPEG or the Independent JPEG Group software refer to the JPEG standard or the documentation provided with the software.

A portable interface to JPEG image files is available with the Python Imaging Library (PIL) by Fredrik Lundh. Information on PIL is available at http://www.pythonware.com/products/pil/ [off-site link].

The jpeg module defines an exception and some functions.

error
Exception raised by compress() and decompress() in case of errors.

compress (data, w, h, b)
Treat data as a pixmap of width w and height h, with b bytes per pixel. The data is in SGI GL order, so the first pixel is in the lower-left corner. This means that gl.lrectread() return data can immediately be passed to compress(). Currently only 1 byte and 4 byte pixels are allowed, the former being treated as greyscale and the latter as RGB color. compress() returns a string that contains the compressed picture, in JFIF format.

decompress (data)
Data is a string containing a picture in JFIF format. It returns a tuple (data, width, height, bytesperpixel). Again, the data is suitable to pass to gl.lrectwrite().

setoption (name, value)
Set various options. Subsequent compress() and decompress() calls will use these options. The following options are available:

Option  Effect 
'forcegray' Force output to be grayscale, even if input is RGB.
'quality' Set the quality of the compressed image to a value between 0 and 100 (default is 75). This only affects compression.
'optimize' Perform Huffman table optimization. Takes longer, but results in smaller compressed image. This only affects compression.
'smooth' Perform inter-block smoothing on uncompressed image. Only useful for low-quality images. This only affects decompression.

See Also:

JPEG Still Image Data Compression Standard, by Pennebaker and Mitchell, is the canonical reference for the JPEG image format.

The ISO standard for JPEG is also published as ITU T.81. This is available in PDF form at http://www.w3.org/Graphics/JPEG/itu-t81.pdf [off-site link].


See About this document... for information on suggesting changes.