FFmpeg
|
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. More... | |
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. More... | |
int | 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, int little_endian) |
Initialize LZW encoder. More... | |
int | ff_lzw_encode (struct LZWEncodeState *s, const uint8_t *inbuf, int insize) |
LZW main compress function. More... | |
int | ff_lzw_encode_flush (struct LZWEncodeState *s) |
Write end code and flush bitstream. More... | |
Variables | |
const int | ff_lzw_encode_state_size |
LZW decoding routines.
Definition in file lzw.h.
enum FF_LZW_MODES |
void ff_lzw_decode_open | ( | LZWState ** | p | ) |
Definition at line 113 of file lzw.c.
Referenced by gif_decode_init(), and tiff_init().
void ff_lzw_decode_close | ( | LZWState ** | p | ) |
Definition at line 118 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.
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 131 of file lzw.c.
Referenced by gif_read_image(), and tiff_unpack_strip().
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.
p | LZW context |
buf | output buffer |
len | number of bytes to decode |
Definition at line 169 of file lzw.c.
Referenced by gif_read_image(), and tiff_unpack_strip().
int ff_lzw_decode_tail | ( | LZWState * | lzw | ) |
Definition at line 99 of file lzw.c.
Referenced by gif_read_image().
void ff_lzw_encode_init | ( | LZWEncodeState * | s, |
uint8_t * | outbuf, | ||
int | outsize, | ||
int | maxbits, | ||
enum FF_LZW_MODES | mode, | ||
int | little_endian | ||
) |
Initialize LZW encoder.
Please set s->clear_code, s->end_code and s->maxbits before run.
s | LZW state |
outbuf | Output buffer |
outsize | Size of output buffer |
maxbits | Maximum length of code |
Definition at line 206 of file lzwenc.c.
Referenced by encode_frame().
int ff_lzw_encode | ( | LZWEncodeState * | s, |
const uint8_t * | inbuf, | ||
int | insize | ||
) |
LZW main compress function.
s | LZW state |
inbuf | Input buffer |
insize | Size of input buffer |
Definition at line 230 of file lzwenc.c.
Referenced by encode_strip().
int ff_lzw_encode_flush | ( | LZWEncodeState * | s | ) |
Write end code and flush bitstream.
s | LZW state |
Definition at line 263 of file lzwenc.c.
Referenced by encode_frame().
const int ff_lzw_encode_state_size |
Definition at line 68 of file lzwenc.c.
Referenced by encode_frame(), and gif_encode_init().