libavcodec/lzw.c File Reference

LZW decoding routines. More...

#include "avcodec.h"
#include "lzw.h"
#include "libavutil/mem.h"

Go to the source code of this file.

Data Structures

struct  LZWState

Defines

#define LZW_MAXBITS   12
#define LZW_SIZTABLE   (1<<LZW_MAXBITS)

Functions

static int lzw_get_code (struct LZWState *s)
const uint8_tff_lzw_cur_ptr (LZWState *p)
void ff_lzw_decode_tail (LZWState *p)
av_cold void ff_lzw_decode_open (LZWState **p)
av_cold void ff_lzw_decode_close (LZWState **p)
int ff_lzw_decode_init (LZWState *p, int csize, const uint8_t *buf, int buf_size, int mode)
 Initialize LZW decoder.
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.

Variables

static const uint16_t mask [17]


Detailed Description

LZW decoding routines.

Author:
Fabrice Bellard

modified for use in TIFF by Konstantin Shishkov

Definition in file lzw.c.


Define Documentation

#define LZW_MAXBITS   12

Definition at line 34 of file lzw.c.

Referenced by ff_lzw_decode(), ff_lzw_decode_init(), and ff_lzw_encode_init().

#define LZW_SIZTABLE   (1<<LZW_MAXBITS)

Definition at line 35 of file lzw.c.


Function Documentation

const uint8_t* ff_lzw_cur_ptr ( LZWState p  ) 

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().

av_cold 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().

av_cold 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 p  ) 

Definition at line 100 of file lzw.c.

Referenced by gif_read_image().

static int lzw_get_code ( struct LZWState s  )  [static]

Definition at line 69 of file lzw.c.

Referenced by ff_lzw_decode().


Variable Documentation

const uint16_t mask[17] [static]

Initial value:

{
    0x0000, 0x0001, 0x0003, 0x0007,
    0x000F, 0x001F, 0x003F, 0x007F,
    0x00FF, 0x01FF, 0x03FF, 0x07FF,
    0x0FFF, 0x1FFF, 0x3FFF, 0x7FFF, 0xFFFF
}

Definition at line 37 of file lzw.c.

Referenced by ac3_lshift_int16_c(), av_read_image_line(), avg_pixels16_l2_altivec(), binkb_read_bundle(), check_input_motion(), cinepak_decode_codebook(), cinepak_decode_vectors(), cmp_direct_inline(), dca_decode_frame(), dca_parse_audio_coding_header(), dca_xxch2index(), decode_0(), decode_13(), decode_bmv_frame(), decode_clnpass(), decode_dds1(), decode_dsw1(), decode_init(), decode_residual(), decode_residual_block(), decode_sigpass(), decode_tsw1(), decodeplane32(), diff_pixels_mvi(), encode_clnpass(), encode_codeword(), encode_refpass(), encode_sigpass(), escape124_decode_frame(), ff_acelp_fc_pulse_per_track(), ff_decode_10_pulses_35bits(), ff_draw_pc_font(), ff_er_add_slice(), ff_h264_check_intra4x4_pred_mode(), ff_lsb2full(), ff_lzw_decode(), ff_lzw_decode_init(), filter_channel(), get_cabac_bypass_sign(), get_mb_score(), h264_deblock_mask(), init(), init_cavlc_level_tab(), init_luts(), ljpeg_decode_rgb_scan(), mp3_write_xing(), mpc8_decode_frame(), mpc8_get_mask(), mszh_decomp(), picmemset(), png_get_interlaced_row(), png_put_interlaced_row(), pp_get_mode_by_name_and_quality(), pred_mv(), pred_spatial_direct_motion(), put_pixels16_l2_altivec(), put_swf_line_edge(), put_swf_rect(), read_residue(), rematrix_channels(), rv34_decode_cbp(), rv34_pred_mv_b(), subsampling_bounds(), ulti_pattern(), unaligned_load(), vector_fmul_add_altivec(), vertClassify_altivec(), vp56_mc(), x8_get_ac_rlf(), and xan_unpack_luma().


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