libavcodec/lzw.h File Reference

LZW decoding routines. More...

#include <stdint.h>

Go to the source code of this file.

Typedefs

typedef void LZWState

Enumerations

enum  FF_LZW_MODES { FF_LZW_GIF, FF_LZW_TIFF }

Functions

void ff_lzw_decode_open (LZWState **p)
void ff_lzw_decode_close (LZWState **p)
int ff_lzw_decode_init (LZWState *s, int csize, const uint8_t *buf, int buf_size, int mode)
 Initialize LZW decoder.
int ff_lzw_decode (LZWState *s, uint8_t *buf, int len)
 Decode given number of bytes NOTE: the algorithm here is inspired from the LZW GIF decoder written by Steven A.
const uint8_tff_lzw_cur_ptr (LZWState *lzw)
void ff_lzw_decode_tail (LZWState *lzw)
void ff_lzw_encode_init (struct LZWEncodeState *s, uint8_t *outbuf, int outsize, int maxbits, enum FF_LZW_MODES mode, void(*lzw_put_bits)(struct PutBitContext *, int, unsigned int))
int ff_lzw_encode (struct LZWEncodeState *s, const uint8_t *inbuf, int insize)
 LZW main compress function.
int ff_lzw_encode_flush (struct LZWEncodeState *s, void(*lzw_flush_put_bits)(struct PutBitContext *))

Variables

const int ff_lzw_encode_state_size


Detailed Description

LZW decoding routines.

Author:
Fabrice Bellard

modified for use in TIFF by Konstantin Shishkov

Definition in file lzw.h.


Typedef Documentation

typedef void LZWState

Definition at line 43 of file lzw.h.


Enumeration Type Documentation

Enumerator:
FF_LZW_GIF 
FF_LZW_TIFF 

Definition at line 37 of file lzw.h.


Function Documentation

const uint8_t* ff_lzw_cur_ptr ( LZWState lzw  ) 

Definition at line 95 of file lzw.c.

Referenced by gif_read_image().

int ff_lzw_decode ( LZWState p,
uint8_t buf,
int  len 
)

Decode given number of bytes NOTE: the algorithm here is inspired from the LZW GIF decoder written by Steven A.

Bennett in 1987.

Parameters:
p LZW context
buf output buffer
len number of bytes to decode
Returns:
number of bytes decoded

Definition at line 175 of file lzw.c.

Referenced by gif_read_image(), and tiff_unpack_strip().

void ff_lzw_decode_close ( LZWState **  p  ) 

Definition at line 123 of file lzw.c.

Referenced by gif_decode_close(), and tiff_end().

int ff_lzw_decode_init ( LZWState p,
int  csize,
const uint8_t buf,
int  buf_size,
int  mode 
)

Initialize LZW decoder.

Parameters:
p LZW context
csize initial code size in bits
buf input data
buf_size input data size
mode decoder working mode - either GIF or TIFF

Definition at line 136 of file lzw.c.

Referenced by gif_read_image(), and tiff_unpack_strip().

void ff_lzw_decode_open ( LZWState **  p  ) 

Definition at line 118 of file lzw.c.

Referenced by gif_decode_init(), and tiff_init().

void ff_lzw_decode_tail ( LZWState lzw  ) 

Definition at line 100 of file lzw.c.

Referenced by gif_read_image().

int ff_lzw_encode ( LZWEncodeState s,
const uint8_t inbuf,
int  insize 
)

LZW main compress function.

Parameters:
s LZW state
inbuf Input buffer
insize Size of input buffer
Returns:
Number of bytes written or -1 on error

Definition at line 226 of file lzwenc.c.

Referenced by encode_strip(), and gif_image_write_image().

int ff_lzw_encode_flush ( struct LZWEncodeState s,
void(*)(struct PutBitContext *)  lzw_flush_put_bits 
)

void ff_lzw_encode_init ( struct LZWEncodeState s,
uint8_t outbuf,
int  outsize,
int  maxbits,
enum FF_LZW_MODES  mode,
void(*)(struct PutBitContext *, int, unsigned int lzw_put_bits 
)


Variable Documentation

Definition at line 66 of file lzwenc.c.

Referenced by encode_frame(), and gif_encode_init().


Generated on Fri Oct 26 02:50:06 2012 for FFmpeg by  doxygen 1.5.8