libavcodec/snow.c File Reference

#include "libavutil/intmath.h"
#include "avcodec.h"
#include "dsputil.h"
#include "dwt.h"
#include "snow.h"
#include "rangecoder.h"
#include "mathops.h"
#include "mpegvideo.h"
#include "h263.h"
#include <assert.h>

Go to the source code of this file.

Data Structures

struct  BlockNode
struct  x_and_coeff
struct  SubBand
struct  Plane
struct  SnowContext

Defines

#define BLOCK_INTRA   1
#define BLOCK_OPT   2
#define LOG2_MB_SIZE   4
#define MB_SIZE   (1<<LOG2_MB_SIZE)
#define ENCODER_EXTRA_BITS   4
#define HTAPS_MAX   8
#define QBIAS_SHIFT   3
#define ME_CACHE_SIZE   1024
#define QEXPSHIFT   (7-FRAC_BITS+8)
#define mca(dx, dy, b_w)
#define GET_S(dst, check)
#define mcf(dx, dy)
#define mcfh(dx, dy)
#define QUANTIZE2   0
#define USE_HALFPEL_PLANE   0
#define P_LEFT   P[1]
#define P_TOP   P[2]
#define P_TOPRIGHT   P[3]
#define P_MEDIAN   P[4]
#define P_MV1   P[9]
#define FLAG_QPEL   1

Functions

static void put_symbol (RangeCoder *c, uint8_t *state, int v, int is_signed)
static int get_symbol (RangeCoder *c, uint8_t *state, int is_signed)
static void put_symbol2 (RangeCoder *c, uint8_t *state, int v, int log2)
static int get_symbol2 (RangeCoder *c, uint8_t *state, int log2)
static void unpack_coeffs (SnowContext *s, SubBand *b, SubBand *parent, int orientation)
static void decode_subband_slice_buffered (SnowContext *s, SubBand *b, slice_buffer *sb, int start_y, int h, int save_state[1])
static void reset_contexts (SnowContext *s)
static int alloc_blocks (SnowContext *s)
static void copy_rac_state (RangeCoder *d, RangeCoder *s)
static void set_blocks (SnowContext *s, int level, int x, int y, int l, int cb, int cr, int mx, int my, int ref, int type)
static void init_ref (MotionEstContext *c, uint8_t *src[3], uint8_t *ref[3], uint8_t *ref2[3], int x, int y, int ref_index)
static void pred_mv (SnowContext *s, int *mx, int *my, int ref, const BlockNode *left, const BlockNode *top, const BlockNode *tr)
static av_always_inline int same_block (BlockNode *a, BlockNode *b)
static void decode_q_branch (SnowContext *s, int level, int x, int y)
static void decode_blocks (SnowContext *s)
static void mc_block (Plane *p, uint8_t *dst, const uint8_t *src, uint8_t *tmp, int stride, int b_w, int b_h, int dx, int dy)
 mca (mca(0, mca(0, 16)
void ff_snow_inner_add_yblock (const uint8_t *obmc, const int obmc_stride, uint8_t **block, int b_w, int b_h, int src_x, int src_y, int src_stride, slice_buffer *sb, int add, uint8_t *dst8)
static av_always_inline void add_yblock (SnowContext *s, int sliced, slice_buffer *sb, IDWTELEM *dst, uint8_t *dst8, const uint8_t *obmc, int src_x, int src_y, int b_w, int b_h, int w, int h, int dst_stride, int src_stride, int obmc_stride, int b_x, int b_y, int add, int offset_dst, int plane_index)
static av_always_inline void predict_slice_buffered (SnowContext *s, slice_buffer *sb, IDWTELEM *old_buffer, int plane_index, int add, int mb_y)
static av_always_inline void predict_slice (SnowContext *s, IDWTELEM *buf, int plane_index, int add, int mb_y)
static av_always_inline void predict_plane (SnowContext *s, IDWTELEM *buf, int plane_index, int add)
static void dequantize_slice_buffered (SnowContext *s, slice_buffer *sb, SubBand *b, IDWTELEM *src, int stride, int start_y, int end_y)
static void correlate_slice_buffered (SnowContext *s, slice_buffer *sb, SubBand *b, IDWTELEM *src, int stride, int inverse, int use_median, int start_y, int end_y)
static void decode_qlogs (SnowContext *s)
static int decode_header (SnowContext *s)
static void init_qexp (void)
static av_cold int common_init (AVCodecContext *avctx)
static int common_init_after_header (AVCodecContext *avctx)
static void halfpel_interpol (SnowContext *s, uint8_t *halfpel[4][4], AVFrame *frame)
static void release_buffer (AVCodecContext *avctx)
static int frame_start (SnowContext *s)
static av_cold void common_end (SnowContext *s)
static av_cold int decode_init (AVCodecContext *avctx)
static int decode_frame (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt)
static av_cold int decode_end (AVCodecContext *avctx)
static av_cold int encode_init (AVCodecContext *avctx)
static int pix_sum (uint8_t *pix, int line_size, int w)
static int pix_norm1 (uint8_t *pix, int line_size, int w)
static int encode_q_branch (SnowContext *s, int level, int x, int y)
static void encode_q_branch2 (SnowContext *s, int level, int x, int y)
static int get_dc (SnowContext *s, int mb_x, int mb_y, int plane_index)
static int get_block_bits (SnowContext *s, int x, int y, int w)
static int get_block_rd (SnowContext *s, int mb_x, int mb_y, int plane_index, const uint8_t *obmc_edged)
static int get_4block_rd (SnowContext *s, int mb_x, int mb_y, int plane_index)
static int encode_subband_c0run (SnowContext *s, SubBand *b, IDWTELEM *src, IDWTELEM *parent, int stride, int orientation)
static int encode_subband (SnowContext *s, SubBand *b, IDWTELEM *src, IDWTELEM *parent, int stride, int orientation)
static av_always_inline int check_block (SnowContext *s, int mb_x, int mb_y, int p[3], int intra, const uint8_t *obmc_edged, int *best_rd)
static av_always_inline int check_block_inter (SnowContext *s, int mb_x, int mb_y, int p0, int p1, const uint8_t *obmc_edged, int *best_rd)
static av_always_inline int check_4block_inter (SnowContext *s, int mb_x, int mb_y, int p0, int p1, int ref, int *best_rd)
static void iterative_me (SnowContext *s)
static void encode_blocks (SnowContext *s, int search)
static void quantize (SnowContext *s, SubBand *b, IDWTELEM *dst, DWTELEM *src, int stride, int bias)
static void dequantize (SnowContext *s, SubBand *b, IDWTELEM *src, int stride)
static void decorrelate (SnowContext *s, SubBand *b, IDWTELEM *src, int stride, int inverse, int use_median)
static void correlate (SnowContext *s, SubBand *b, IDWTELEM *src, int stride, int inverse, int use_median)
static void encode_qlogs (SnowContext *s)
static void encode_header (SnowContext *s)
static void update_last_header_values (SnowContext *s)
static int qscale2qlog (int qscale)
static int ratecontrol_1pass (SnowContext *s, AVFrame *pict)
static void calculate_visual_weight (SnowContext *s, Plane *p)
static int encode_frame (AVCodecContext *avctx, unsigned char *buf, int buf_size, void *data)
static av_cold int encode_end (AVCodecContext *avctx)

Variables

static const int8_t quant3 [256]
static const int8_t quant3b [256]
static const int8_t quant3bA [256]
static const int8_t quant5 [256]
static const int8_t quant7 [256]
static const int8_t quant9 [256]
static const int8_t quant11 [256]
static const int8_t quant13 [256]
static const uint8_t obmc32 [1024]
static const uint8_t obmc16 [256]
static const uint8_t obmc8 [64]
static const uint8_t obmc4 [16]
static const uint8_t *const obmc_tab [4]
static int scale_mv_ref [MAX_REF_FRAMES][MAX_REF_FRAMES]
static const BlockNode null_block
static uint8_t qexp [QROOT]
AVCodec snow_decoder
AVCodec snow_encoder


Define Documentation

#define BLOCK_INTRA   1

#define BLOCK_OPT   2

Definition at line 384 of file snow.c.

Referenced by iterative_me().

#define ENCODER_EXTRA_BITS   4

Definition at line 400 of file snow.c.

Referenced by encode_frame(), and quantize().

#define FLAG_QPEL   1

Definition at line 2390 of file snow.c.

#define GET_S ( dst,
check   ) 

Value:

tmp= get_symbol(&s->c, s->header_state, 0);\
    if(!(check)){\
        av_log(s->avctx, AV_LOG_ERROR, "Error " #dst " is %d\n", tmp);\
        return -1;\
    }\
    dst= tmp;

Definition at line 1576 of file snow.c.

Referenced by decode_header().

#define HTAPS_MAX   8

Definition at line 401 of file snow.c.

Referenced by decode_header(), get_block_rd(), mc_block(), and mca().

#define LOG2_MB_SIZE   4

Definition at line 398 of file snow.c.

Referenced by alloc_blocks(), and encode_q_branch().

#define MB_SIZE   (1<<LOG2_MB_SIZE)

#define mca ( dx,
dy,
b_w   ) 

Value:

static void mc_block_hpel ## dx ## dy ## b_w(uint8_t *dst, const uint8_t *src, int stride, int h){\
    uint8_t tmp[stride*(b_w+HTAPS_MAX-1)];\
    assert(h==b_w);\
    mc_block(NULL, dst, src-(HTAPS_MAX/2-1)-(HTAPS_MAX/2-1)*stride, tmp, stride, b_w, b_w, dx, dy);\
}

Definition at line 1107 of file snow.c.

#define mcf ( dx,
dy   ) 

Value:

s->dsp.put_qpel_pixels_tab       [0][dy+dx/4]=\
    s->dsp.put_no_rnd_qpel_pixels_tab[0][dy+dx/4]=\
        s->dsp.put_h264_qpel_pixels_tab[0][dy+dx/4];\
    s->dsp.put_qpel_pixels_tab       [1][dy+dx/4]=\
    s->dsp.put_no_rnd_qpel_pixels_tab[1][dy+dx/4]=\
        s->dsp.put_h264_qpel_pixels_tab[1][dy+dx/4];

Referenced by common_init().

#define mcfh ( dx,
dy   ) 

Value:

s->dsp.put_pixels_tab       [0][dy/4+dx/8]=\
    s->dsp.put_no_rnd_pixels_tab[0][dy/4+dx/8]=\
        mc_block_hpel ## dx ## dy ## 16;\
    s->dsp.put_pixels_tab       [1][dy/4+dx/8]=\
    s->dsp.put_no_rnd_pixels_tab[1][dy/4+dx/8]=\
        mc_block_hpel ## dx ## dy ## 8;

Referenced by common_init().

#define ME_CACHE_SIZE   1024

Definition at line 489 of file snow.c.

Referenced by check_4block_inter(), and check_block().

#define P_LEFT   P[1]

Definition at line 2385 of file snow.c.

#define P_MEDIAN   P[4]

Definition at line 2388 of file snow.c.

#define P_MV1   P[9]

Definition at line 2389 of file snow.c.

#define P_TOP   P[2]

Definition at line 2386 of file snow.c.

#define P_TOPRIGHT   P[3]

Definition at line 2387 of file snow.c.

#define QBIAS_SHIFT   3

Definition at line 482 of file snow.c.

Referenced by decode_subband_slice_buffered(), dequantize(), and dequantize_slice_buffered().

#define QEXPSHIFT   (7-FRAC_BITS+8)

#define QUANTIZE2   0

Definition at line 1799 of file snow.c.

Referenced by encode_frame().

#define USE_HALFPEL_PLANE   0

Definition at line 1916 of file snow.c.

Referenced by frame_start().


Function Documentation

static av_always_inline void add_yblock ( SnowContext s,
int  sliced,
slice_buffer sb,
IDWTELEM dst,
uint8_t *  dst8,
const uint8_t *  obmc,
int  src_x,
int  src_y,
int  b_w,
int  b_h,
int  w,
int  h,
int  dst_stride,
int  src_stride,
int  obmc_stride,
int  b_x,
int  b_y,
int  add,
int  offset_dst,
int  plane_index 
) [static]

Definition at line 1237 of file snow.c.

Referenced by get_4block_rd(), get_dc(), predict_slice(), and predict_slice_buffered().

static int alloc_blocks ( SnowContext s  )  [static]

Definition at line 780 of file snow.c.

Referenced by decode_frame(), and encode_init().

static void calculate_visual_weight ( SnowContext s,
Plane p 
) [static]

Definition at line 3674 of file snow.c.

Referenced by encode_frame().

static av_always_inline int check_4block_inter ( SnowContext s,
int  mb_x,
int  mb_y,
int  p0,
int  p1,
int  ref,
int *  best_rd 
) [static]

Definition at line 3099 of file snow.c.

Referenced by iterative_me().

static av_always_inline int check_block ( SnowContext s,
int  mb_x,
int  mb_y,
int  p[3],
int  intra,
const uint8_t *  obmc_edged,
int *  best_rd 
) [static]

Definition at line 3054 of file snow.c.

Referenced by check_block_inter(), and iterative_me().

static av_always_inline int check_block_inter ( SnowContext s,
int  mb_x,
int  mb_y,
int  p0,
int  p1,
const uint8_t *  obmc_edged,
int *  best_rd 
) [static]

Definition at line 3094 of file snow.c.

Referenced by iterative_me().

static av_cold void common_end ( SnowContext s  )  [static]

Definition at line 2020 of file snow.c.

static av_cold int common_init ( AVCodecContext avctx  )  [static]

Definition at line 1676 of file snow.c.

static int common_init_after_header ( AVCodecContext avctx  )  [static]

Definition at line 1746 of file snow.c.

Referenced by decode_frame(), and encode_frame().

static void copy_rac_state ( RangeCoder d,
RangeCoder s 
) [inline, static]

Definition at line 792 of file snow.c.

static void correlate ( SnowContext s,
SubBand b,
IDWTELEM src,
int  stride,
int  inverse,
int  use_median 
) [static]

Definition at line 3489 of file snow.c.

Referenced by encode_frame().

static void correlate_slice_buffered ( SnowContext s,
slice_buffer sb,
SubBand b,
IDWTELEM src,
int  stride,
int  inverse,
int  use_median,
int  start_y,
int  end_y 
) [static]

Definition at line 1530 of file snow.c.

Referenced by decode_frame().

static void decode_blocks ( SnowContext s  )  [static]

Definition at line 911 of file snow.c.

static av_cold int decode_end ( AVCodecContext avctx  )  [static]

Definition at line 2227 of file snow.c.

static int decode_frame ( AVCodecContext avctx,
void *  data,
int *  data_size,
AVPacket avpkt 
) [static]

Definition at line 2066 of file snow.c.

static int decode_header ( SnowContext s  )  [static]

Definition at line 1584 of file snow.c.

Referenced by decode_frame().

static av_cold int decode_init ( AVCodecContext avctx  )  [static]

Definition at line 2057 of file snow.c.

static void decode_q_branch ( SnowContext s,
int  level,
int  x,
int  y 
) [static]

Definition at line 862 of file snow.c.

Referenced by decode_blocks().

static void decode_qlogs ( SnowContext s  )  [static]

Definition at line 1560 of file snow.c.

Referenced by decode_header().

static void decode_subband_slice_buffered ( SnowContext s,
SubBand b,
slice_buffer sb,
int  start_y,
int  h,
int  save_state[1] 
) [inline, static]

Definition at line 725 of file snow.c.

Referenced by decode_frame().

static void decorrelate ( SnowContext s,
SubBand b,
IDWTELEM src,
int  stride,
int  inverse,
int  use_median 
) [static]

Definition at line 3465 of file snow.c.

Referenced by encode_frame(), and ratecontrol_1pass().

static void dequantize ( SnowContext s,
SubBand b,
IDWTELEM src,
int  stride 
) [static]

Definition at line 3443 of file snow.c.

Referenced by encode_frame().

static void dequantize_slice_buffered ( SnowContext s,
slice_buffer sb,
SubBand b,
IDWTELEM src,
int  stride,
int  start_y,
int  end_y 
) [static]

Definition at line 1507 of file snow.c.

Referenced by decode_frame().

static void encode_blocks ( SnowContext s,
int  search 
) [static]

Definition at line 3360 of file snow.c.

Referenced by encode_frame().

static av_cold int encode_end ( AVCodecContext avctx  )  [static]

Definition at line 3977 of file snow.c.

static int encode_frame ( AVCodecContext avctx,
unsigned char *  buf,
int  buf_size,
void *  data 
) [static]

Definition at line 3700 of file snow.c.

static void encode_header ( SnowContext s  )  [static]

Definition at line 3526 of file snow.c.

Referenced by encode_frame().

static av_cold int encode_init ( AVCodecContext avctx  )  [static]

Definition at line 2253 of file snow.c.

static int encode_q_branch ( SnowContext s,
int  level,
int  x,
int  y 
) [static]

Definition at line 2392 of file snow.c.

Referenced by encode_blocks(), and iterative_me().

static void encode_q_branch2 ( SnowContext s,
int  level,
int  x,
int  y 
) [static]

Definition at line 2616 of file snow.c.

Referenced by encode_blocks().

static void encode_qlogs ( SnowContext s  )  [static]

Definition at line 3513 of file snow.c.

Referenced by encode_header().

static int encode_subband ( SnowContext s,
SubBand b,
IDWTELEM src,
IDWTELEM parent,
int  stride,
int  orientation 
) [static]

Definition at line 3047 of file snow.c.

Referenced by encode_frame().

static int encode_subband_c0run ( SnowContext s,
SubBand b,
IDWTELEM src,
IDWTELEM parent,
int  stride,
int  orientation 
) [static]

Definition at line 2927 of file snow.c.

Referenced by encode_subband().

void ff_snow_inner_add_yblock ( const uint8_t *  obmc,
const int  obmc_stride,
uint8_t **  block,
int  b_w,
int  b_h,
int  src_x,
int  src_y,
int  src_stride,
slice_buffer sb,
int  add,
uint8_t *  dst8 
)

static int frame_start ( SnowContext s  )  [static]

Definition at line 1974 of file snow.c.

Referenced by decode_frame(), and encode_frame().

static int get_4block_rd ( SnowContext s,
int  mb_x,
int  mb_y,
int  plane_index 
) [static]

Definition at line 2861 of file snow.c.

Referenced by check_4block_inter(), and iterative_me().

static int get_block_bits ( SnowContext s,
int  x,
int  y,
int  w 
) [inline, static]

Definition at line 2725 of file snow.c.

Referenced by get_4block_rd(), and get_block_rd().

static int get_block_rd ( SnowContext s,
int  mb_x,
int  mb_y,
int  plane_index,
const uint8_t *  obmc_edged 
) [static]

Definition at line 2763 of file snow.c.

Referenced by check_block().

static int get_dc ( SnowContext s,
int  mb_x,
int  mb_y,
int  plane_index 
) [static]

Definition at line 2670 of file snow.c.

static int get_symbol ( RangeCoder c,
uint8_t *  state,
int  is_signed 
) [inline, static]

Definition at line 567 of file snow.c.

static int get_symbol2 ( RangeCoder c,
uint8_t *  state,
int  log2 
) [inline, static]

Definition at line 607 of file snow.c.

Referenced by unpack_coeffs().

static void halfpel_interpol ( SnowContext s,
uint8_t *  halfpel[4][4],
AVFrame frame 
) [static]

Definition at line 1918 of file snow.c.

Referenced by frame_start().

static void init_qexp ( void   )  [static]

Definition at line 1666 of file snow.c.

Referenced by common_init().

static void init_ref ( MotionEstContext c,
uint8_t *  src[3],
uint8_t *  ref[3],
uint8_t *  ref2[3],
int  x,
int  y,
int  ref_index 
) [inline, static]

Definition at line 824 of file snow.c.

static void iterative_me ( SnowContext s  )  [static]

Definition at line 3136 of file snow.c.

Referenced by encode_blocks().

static void mc_block ( Plane p,
uint8_t *  dst,
const uint8_t *  src,
uint8_t *  tmp,
int  stride,
int  b_w,
int  b_h,
int  dx,
int  dy 
) [static]

Definition at line 923 of file snow.c.

Referenced by mca().

mca ( mca(  0,
mca(  0,
16   
)

Definition at line 1114 of file snow.c.

static int pix_norm1 ( uint8_t *  pix,
int  line_size,
int  w 
) [static]

Definition at line 2368 of file snow.c.

Referenced by encode_q_branch().

static int pix_sum ( uint8_t *  pix,
int  line_size,
int  w 
) [static]

Definition at line 2352 of file snow.c.

Referenced by encode_q_branch().

static void pred_mv ( SnowContext s,
int *  mx,
int *  my,
int  ref,
const BlockNode left,
const BlockNode top,
const BlockNode tr 
) [inline, static]

Definition at line 838 of file snow.c.

Referenced by decode_q_branch(), encode_q_branch(), encode_q_branch2(), and get_block_bits().

static av_always_inline void predict_plane ( SnowContext s,
IDWTELEM buf,
int  plane_index,
int  add 
) [static]

Definition at line 1500 of file snow.c.

Referenced by decode_frame(), and encode_frame().

static av_always_inline void predict_slice ( SnowContext s,
IDWTELEM buf,
int  plane_index,
int  add,
int  mb_y 
) [static]

Definition at line 1450 of file snow.c.

Referenced by predict_plane().

static av_always_inline void predict_slice_buffered ( SnowContext s,
slice_buffer sb,
IDWTELEM old_buffer,
int  plane_index,
int  add,
int  mb_y 
) [static]

Definition at line 1394 of file snow.c.

Referenced by decode_frame().

static void put_symbol ( RangeCoder c,
uint8_t *  state,
int  v,
int  is_signed 
) [inline, static]

Definition at line 506 of file snow.c.

static void put_symbol2 ( RangeCoder c,
uint8_t *  state,
int  v,
int  log2 
) [inline, static]

Definition at line 587 of file snow.c.

Referenced by encode_subband_c0run().

static int qscale2qlog ( int  qscale  )  [static]

Definition at line 3617 of file snow.c.

Referenced by encode_frame(), and ratecontrol_1pass().

static void quantize ( SnowContext s,
SubBand b,
IDWTELEM dst,
DWTELEM src,
int  stride,
int  bias 
) [static]

Definition at line 3382 of file snow.c.

Referenced by encode_frame().

static int ratecontrol_1pass ( SnowContext s,
AVFrame pict 
) [static]

Definition at line 3622 of file snow.c.

Referenced by encode_frame().

static void release_buffer ( AVCodecContext avctx  )  [static]

Definition at line 1962 of file snow.c.

Referenced by decode_frame(), encode_frame(), and frame_start().

static void reset_contexts ( SnowContext s  )  [static]

Definition at line 766 of file snow.c.

Referenced by decode_header(), and encode_header().

static av_always_inline int same_block ( BlockNode a,
BlockNode b 
) [static]

Definition at line 854 of file snow.c.

Referenced by add_yblock(), encode_q_branch2(), get_4block_rd(), and iterative_me().

static void set_blocks ( SnowContext s,
int  level,
int  x,
int  y,
int  l,
int  cb,
int  cr,
int  mx,
int  my,
int  ref,
int  type 
) [inline, static]

Definition at line 800 of file snow.c.

Referenced by decode_q_branch(), encode_q_branch(), and encode_q_branch2().

static void unpack_coeffs ( SnowContext s,
SubBand b,
SubBand parent,
int  orientation 
) [inline, static]

Definition at line 627 of file snow.c.

Referenced by decode_frame().

static void update_last_header_values ( SnowContext s  )  [static]

Definition at line 3597 of file snow.c.

Referenced by encode_frame().


Variable Documentation

const BlockNode null_block [static]

Initial value:

 { 
    .color= {128,128,128},
    .mx= 0,
    .my= 0,
    .ref= 0,
    .type= 0,
    .level= 0,
}

Definition at line 389 of file snow.c.

const uint8_t obmc16[256] [static]

Initial value:

{
  0,  4,  4,  8,  8, 12, 12, 16, 16, 12, 12,  8,  8,  4,  4,  0,
  4,  8, 16, 20, 28, 32, 40, 44, 44, 40, 32, 28, 20, 16,  8,  4,
  4, 16, 24, 36, 44, 56, 64, 76, 76, 64, 56, 44, 36, 24, 16,  4,
  8, 20, 36, 48, 64, 76, 92,104,104, 92, 76, 64, 48, 36, 20,  8,
  8, 28, 44, 64, 80,100,116,136,136,116,100, 80, 64, 44, 28,  8,
 12, 32, 56, 76,100,120,144,164,164,144,120,100, 76, 56, 32, 12,
 12, 40, 64, 92,116,144,168,196,196,168,144,116, 92, 64, 40, 12,
 16, 44, 76,104,136,164,196,224,224,196,164,136,104, 76, 44, 16,
 16, 44, 76,104,136,164,196,224,224,196,164,136,104, 76, 44, 16,
 12, 40, 64, 92,116,144,168,196,196,168,144,116, 92, 64, 40, 12,
 12, 32, 56, 76,100,120,144,164,164,144,120,100, 76, 56, 32, 12,
  8, 28, 44, 64, 80,100,116,136,136,116,100, 80, 64, 44, 28,  8,
  8, 20, 36, 48, 64, 76, 92,104,104, 92, 76, 64, 48, 36, 20,  8,
  4, 16, 24, 36, 44, 56, 64, 76, 76, 64, 56, 44, 36, 24, 16,  4,
  4,  8, 16, 20, 28, 32, 40, 44, 44, 40, 32, 28, 20, 16,  8,  4,
  0,  4,  4,  8,  8, 12, 12, 16, 16, 12, 12,  8,  8,  4,  4,  0,

}

Definition at line 272 of file snow.c.

const uint8_t obmc32[1024] [static]

Definition at line 237 of file snow.c.

const uint8_t obmc4[16] [static]

Initial value:

{
 16, 48, 48, 16,
 48,144,144, 48,
 48,144,144, 48,
 16, 48, 48, 16,

}

Definition at line 362 of file snow.c.

Referenced by add_yblock(), and ff_snow_inner_add_yblock().

const uint8_t obmc8[64] [static]

Initial value:

{
  4, 12, 20, 28, 28, 20, 12,  4,
 12, 36, 60, 84, 84, 60, 36, 12,
 20, 60,100,140,140,100, 60, 20,
 28, 84,140,196,196,140, 84, 28,
 28, 84,140,196,196,140, 84, 28,
 20, 60,100,140,140,100, 60, 20,
 12, 36, 60, 84, 84, 60, 36, 12,
  4, 12, 20, 28, 28, 20, 12,  4,

}

Definition at line 349 of file snow.c.

const uint8_t* const obmc_tab[4] [static]

Initial value:

Definition at line 370 of file snow.c.

Referenced by get_4block_rd(), get_dc(), iterative_me(), predict_slice(), and predict_slice_buffered().

uint8_t qexp[QROOT] [static]

const int8_t quant11[256] [static]

Initial value:

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

Definition at line 144 of file snow.c.

const int8_t quant13[256] [static]

Initial value:

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

Definition at line 162 of file snow.c.

const int8_t quant3[256] [static]

Initial value:

{
 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0,
}

Definition at line 36 of file snow.c.

const int8_t quant3b[256] [static]

Initial value:

{
 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
}

Definition at line 54 of file snow.c.

const int8_t quant3bA[256] [static]

Initial value:

{
 0, 0, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1, 1,-1,
}

Definition at line 72 of file snow.c.

Referenced by encode_subband_c0run(), and unpack_coeffs().

const int8_t quant5[256] [static]

Initial value:

{
 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,
-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,
-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,
-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,
-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,
-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,
-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,
-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-1,-1,-1,
}

Definition at line 90 of file snow.c.

const int8_t quant7[256] [static]

Initial value:

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

Definition at line 108 of file snow.c.

const int8_t quant9[256] [static]

Initial value:

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

Definition at line 126 of file snow.c.

int scale_mv_ref[MAX_REF_FRAMES][MAX_REF_FRAMES] [static]

Definition at line 374 of file snow.c.

Referenced by common_init(), and pred_mv().

Initial value:

Definition at line 2238 of file snow.c.

Initial value:

Definition at line 3989 of file snow.c.


Generated on Tue Apr 20 17:39:42 2010 for FFmpeg by  doxygen 1.5.6