libavcodec/svq3.c File Reference

svq3 decoder. More...

#include "svq1.h"

Go to the source code of this file.

Defines

#define FULLPEL_MODE   1
#define HALFPEL_MODE   2
#define THIRDPEL_MODE   3
#define PREDICT_MODE   4
#define stride   16

Functions

static void svq3_luma_dc_dequant_idct_c (DCTELEM *block, int qp)
static void svq3_add_idct_c (uint8_t *dst, DCTELEM *block, int stride, int qp, int dc)
static int svq3_decode_block (GetBitContext *gb, DCTELEM *block, int index, const int type)
static void svq3_mc_dir_part (MpegEncContext *s, int x, int y, int width, int height, int mx, int my, int dxy, int thirdpel, int dir, int avg)
static int svq3_mc_dir (H264Context *h, int size, int mode, int dir, int avg)
static int svq3_decode_mb (H264Context *h, unsigned int mb_type)
static int svq3_decode_slice_header (H264Context *h)
static av_cold int svq3_decode_init (AVCodecContext *avctx)
static int svq3_decode_frame (AVCodecContext *avctx, void *data, int *data_size, const uint8_t *buf, int buf_size)

Variables

static const uint8_t svq3_scan [16]
static const uint8_t svq3_pred_0 [25][2]
static const int8_t svq3_pred_1 [6][6][5]
struct {
   uint8_t   run
   uint8_t   level
svq3_dct_tables [2][16]
static const uint32_t svq3_dequant_coeff [32]
AVCodec svq3_decoder


Detailed Description

svq3 decoder.

Definition in file svq3.c.


Define Documentation

#define FULLPEL_MODE   1

Definition at line 54 of file svq3.c.

Referenced by svq3_decode_mb().

#define HALFPEL_MODE   2

Definition at line 55 of file svq3.c.

Referenced by svq3_decode_mb(), and svq3_mc_dir().

#define PREDICT_MODE   4

Definition at line 57 of file svq3.c.

Referenced by svq3_decode_mb(), and svq3_mc_dir().

#define stride   16

#define THIRDPEL_MODE   3

Definition at line 56 of file svq3.c.

Referenced by svq3_decode_mb(), and svq3_mc_dir().


Function Documentation

static void svq3_add_idct_c ( uint8_t *  dst,
DCTELEM block,
int  stride,
int  qp,
int  dc 
) [static]

Definition at line 154 of file svq3.c.

static int svq3_decode_block ( GetBitContext gb,
DCTELEM block,
int  index,
const int  type 
) [inline, static]

Definition at line 192 of file svq3.c.

Referenced by svq3_decode_mb().

static int svq3_decode_frame ( AVCodecContext avctx,
void *  data,
int *  data_size,
const uint8_t *  buf,
int  buf_size 
) [static]

Definition at line 890 of file svq3.c.

static av_cold int svq3_decode_init ( AVCodecContext avctx  )  [static]

Definition at line 779 of file svq3.c.

static int svq3_decode_mb ( H264Context h,
unsigned int  mb_type 
) [static]

Definition at line 418 of file svq3.c.

Referenced by svq3_decode_frame().

static int svq3_decode_slice_header ( H264Context h  )  [static]

Definition at line 694 of file svq3.c.

Referenced by svq3_decode_frame().

static void svq3_luma_dc_dequant_idct_c ( DCTELEM block,
int  qp 
) [static]

Definition at line 117 of file svq3.c.

static int svq3_mc_dir ( H264Context h,
int  size,
int  mode,
int  dir,
int  avg 
) [inline, static]

Definition at line 311 of file svq3.c.

Referenced by svq3_decode_mb().

static void svq3_mc_dir_part ( MpegEncContext s,
int  x,
int  y,
int  width,
int  height,
int  mx,
int  my,
int  dxy,
int  thirdpel,
int  dir,
int  avg 
) [inline, static]

Definition at line 249 of file svq3.c.

Referenced by svq3_decode_mb(), and svq3_mc_dir().


Variable Documentation

uint8_t level

Definition at line 102 of file svq3.c.

Referenced by adpcm_decode_frame(), clip_coeffs(), dct_quantize_c(), dct_quantize_refine(), dct_quantize_TMPL(), dct_quantize_trellis_c(), dct_single_coeff_elimination(), dct_unquantize_h263_altivec(), dct_unquantize_h263_inter_c(), dct_unquantize_h263_intra_c(), dct_unquantize_h263_intra_iwmmxt(), dct_unquantize_h263_intra_mmx(), dct_unquantize_h263_mmi(), dct_unquantize_mpeg1_inter_c(), dct_unquantize_mpeg1_intra_c(), dct_unquantize_mpeg2_inter_c(), dct_unquantize_mpeg2_intra_bitexact(), dct_unquantize_mpeg2_intra_c(), decode_block(), decode_block_progressive(), decode_i_block(), decode_residual(), decode_residual_block(), denoise_dct_c(), dnxhd_calc_ac_bits(), dnxhd_decode_dct_block(), dnxhd_init_vlc(), dnxhd_unquantize_c(), dv_decode_ac(), dvvideo_init(), ebml_level_end(), ebml_read_master(), encode_block(), ff_mpeg1_decode_block_intra(), ff_spatial_dwt(), ff_spatial_idwt_buffered_init(), ff_spatial_idwt_buffered_slice(), ff_spatial_idwt_init(), ff_spatial_idwt_slice(), flac_encode_init(), guess_palette(), h261_decode_block(), h261_encode_block(), imc_decode_level_coefficients(), init_2d_vlc_rl(), init_coef_vlc(), init_quantized_coeffs_elem0(), init_rl(), init_uni_ac_vlc(), init_vlc_rl(), matroska_execute_seekhead(), mdec_decode_block_intra(), mpeg1_decode_block_inter(), mpeg1_encode_block(), mpeg1_fast_decode_block_inter(), mpeg2_decode_block_intra(), mpeg2_decode_block_non_intra(), mpeg2_fast_decode_block_intra(), mpeg2_fast_decode_block_non_intra(), process_subpacket_9(), qdm2_fft_generate_tone(), qdm2_fft_tone_synthesizer(), quantize_c(), reset_contexts(), svq1_decode_block_intra(), svq1_decode_block_non_intra(), svq1_encode_plane(), svq3_decode_block(), tgq_dconly(), vc1_decode_ac_coeff(), wma_decode_block(), and x8_decode_intra_mb().

uint8_t run

struct { ... } svq3_dct_tables[2][16] [static]

Referenced by svq3_decode_block().

Initial value:

Definition at line 1043 of file svq3.c.

const uint32_t svq3_dequant_coeff[32] [static]

Initial value:

 {
     3881,  4351,  4890,  5481,  6154,  6914,  7761,  8718,
     9781, 10987, 12339, 13828, 15523, 17435, 19561, 21873,
    24552, 27656, 30847, 34870, 38807, 43747, 49103, 54683,
    61694, 68745, 77615, 89113,100253,109366,126635,141533
}

Definition at line 109 of file svq3.c.

Referenced by svq3_add_idct_c(), and svq3_luma_dc_dequant_idct_c().

const uint8_t svq3_pred_0[25][2] [static]

Initial value:

 {
    { 0, 0 },
    { 1, 0 }, { 0, 1 },
    { 0, 2 }, { 1, 1 }, { 2, 0 },
    { 3, 0 }, { 2, 1 }, { 1, 2 }, { 0, 3 },
    { 0, 4 }, { 1, 3 }, { 2, 2 }, { 3, 1 }, { 4, 0 },
    { 4, 1 }, { 3, 2 }, { 2, 3 }, { 1, 4 },
    { 2, 4 }, { 3, 3 }, { 4, 2 },
    { 4, 3 }, { 3, 4 },
    { 4, 4 }
}

Definition at line 75 of file svq3.c.

Referenced by svq3_decode_mb().

const int8_t svq3_pred_1[6][6][5] [static]

Initial value:

 {
    { { 2,-1,-1,-1,-1 }, { 2, 1,-1,-1,-1 }, { 1, 2,-1,-1,-1 },
      { 2, 1,-1,-1,-1 }, { 1, 2,-1,-1,-1 }, { 1, 2,-1,-1,-1 } },
    { { 0, 2,-1,-1,-1 }, { 0, 2, 1, 4, 3 }, { 0, 1, 2, 4, 3 },
      { 0, 2, 1, 4, 3 }, { 2, 0, 1, 3, 4 }, { 0, 4, 2, 1, 3 } },
    { { 2, 0,-1,-1,-1 }, { 2, 1, 0, 4, 3 }, { 1, 2, 4, 0, 3 },
      { 2, 1, 0, 4, 3 }, { 2, 1, 4, 3, 0 }, { 1, 2, 4, 0, 3 } },
    { { 2, 0,-1,-1,-1 }, { 2, 0, 1, 4, 3 }, { 1, 2, 0, 4, 3 },
      { 2, 1, 0, 4, 3 }, { 2, 1, 3, 4, 0 }, { 2, 4, 1, 0, 3 } },
    { { 0, 2,-1,-1,-1 }, { 0, 2, 1, 3, 4 }, { 1, 2, 3, 0, 4 },
      { 2, 0, 1, 3, 4 }, { 2, 1, 3, 0, 4 }, { 2, 0, 4, 3, 1 } },
    { { 0, 2,-1,-1,-1 }, { 0, 2, 4, 1, 3 }, { 1, 4, 2, 0, 3 },
      { 4, 2, 0, 1, 3 }, { 2, 0, 1, 4, 3 }, { 4, 2, 1, 0, 3 } },
}

Definition at line 87 of file svq3.c.

Referenced by svq3_decode_mb().

const uint8_t svq3_scan[16] [static]

Initial value:

 {
    0+0*4, 1+0*4, 2+0*4, 2+1*4,
    2+2*4, 3+0*4, 3+1*4, 3+2*4,
    0+1*4, 0+2*4, 1+1*4, 1+2*4,
    0+3*4, 1+3*4, 2+3*4, 3+3*4,
}

Definition at line 68 of file svq3.c.

Referenced by svq3_decode_block().


Generated on Fri Oct 26 02:35:44 2012 for FFmpeg by  doxygen 1.5.8