libavcodec/dsputil.h File Reference

DSP utils. More...

#include "libavutil/intreadwrite.h"
#include "avcodec.h"

Go to the source code of this file.

Data Structures

struct  ScanTable
 Scantable. More...
struct  DSPContext
 DSPContext. More...

Defines

#define MAX_NEG_CROP   1024
#define DEF_OLD_QPEL(name)
#define CALL_2X_PIXELS(a, b, n)
#define FF_NO_IDCT_PERM   1
#define FF_LIBMPEG2_IDCT_PERM   2
#define FF_SIMPLE_IDCT_PERM   3
#define FF_TRANSPOSE_IDCT_PERM   4
#define FF_PARTTRANS_IDCT_PERM   5
#define FF_SSE2_IDCT_PERM   6
#define BASIS_SHIFT   16
#define RECON_SHIFT   6
#define EDGE_WIDTH   16
#define BYTE_VEC32(c)   ((c)*0x01010101UL)
#define emms_c()
 Empty mmx state.
#define emms_c()
 Empty mmx state.
#define STRIDE_ALIGN   8
#define LOCAL_ALIGNED(a, t, v, s,...)
#define LOCAL_ALIGNED_8(t, v, s,...)   LOCAL_ALIGNED(8, t, v, s, __VA_ARGS__)
#define LOCAL_ALIGNED_16(t, v, s,...)   LOCAL_ALIGNED(16, t, v, s, __VA_ARGS__)
#define WRAPPER8_16(name8, name16)
#define WRAPPER8_16_SQ(name8, name16)

Typedefs

typedef short DCTELEM
typedef void(* op_pixels_func )(uint8_t *block, const uint8_t *pixels, int line_size, int h)
typedef void(* tpel_mc_func )(uint8_t *block, const uint8_t *pixels, int line_size, int w, int h)
typedef void(* qpel_mc_func )(uint8_t *dst, uint8_t *src, int stride)
typedef void(* h264_chroma_mc_func )(uint8_t *dst, uint8_t *src, int srcStride, int h, int x, int y)
typedef void(* op_fill_func )(uint8_t *block, uint8_t value, int line_size, int h)
typedef int(* me_cmp_func )(void *s, uint8_t *blk1, uint8_t *blk2, int line_size, int h)

Functions

void fdct_ifast (DCTELEM *data)
void fdct_ifast248 (DCTELEM *data)
void ff_jpeg_fdct_islow (DCTELEM *data)
void ff_fdct248_islow (DCTELEM *data)
void j_rev_dct (DCTELEM *data)
void j_rev_dct4 (DCTELEM *data)
void j_rev_dct2 (DCTELEM *data)
void j_rev_dct1 (DCTELEM *data)
void ff_wmv2_idct_c (DCTELEM *data)
void ff_fdct_mmx (DCTELEM *block)
void ff_fdct_mmx2 (DCTELEM *block)
void ff_fdct_sse2 (DCTELEM *block)
void ff_h264_idct8_add_c (uint8_t *dst, DCTELEM *block, int stride)
void ff_h264_idct_add_c (uint8_t *dst, DCTELEM *block, int stride)
void ff_h264_idct8_dc_add_c (uint8_t *dst, DCTELEM *block, int stride)
void ff_h264_idct_dc_add_c (uint8_t *dst, DCTELEM *block, int stride)
void ff_h264_lowres_idct_add_c (uint8_t *dst, int stride, DCTELEM *block)
void ff_h264_lowres_idct_put_c (uint8_t *dst, int stride, DCTELEM *block)
void ff_h264_idct_add16_c (uint8_t *dst, const int *blockoffset, DCTELEM *block, int stride, const uint8_t nnzc[6 *8])
void ff_h264_idct_add16intra_c (uint8_t *dst, const int *blockoffset, DCTELEM *block, int stride, const uint8_t nnzc[6 *8])
void ff_h264_idct8_add4_c (uint8_t *dst, const int *blockoffset, DCTELEM *block, int stride, const uint8_t nnzc[6 *8])
void ff_h264_idct_add8_c (uint8_t **dest, const int *blockoffset, DCTELEM *block, int stride, const uint8_t nnzc[6 *8])
void ff_vector_fmul_window_c (float *dst, const float *src0, const float *src1, const float *win, float add_bias, int len)
void ff_float_to_int16_c (int16_t *dst, const float *src, long len)
void ff_float_to_int16_interleave_c (int16_t *dst, const float **src, long len, int channels)
void ff_vp3_idct_c (DCTELEM *block)
void ff_vp3_idct_put_c (uint8_t *dest, int line_size, DCTELEM *block)
void ff_vp3_idct_add_c (uint8_t *dest, int line_size, DCTELEM *block)
void ff_vp3_idct_dc_add_c (uint8_t *dest, int line_size, const DCTELEM *block)
void ff_vp3_v_loop_filter_c (uint8_t *src, int stride, int *bounding_values)
void ff_vp3_h_loop_filter_c (uint8_t *src, int stride, int *bounding_values)
void ff_vp6_filter_diag4_c (uint8_t *dst, uint8_t *src, int stride, const int16_t *h_weights, const int16_t *v_weights)
void ff_bink_idct_c (DCTELEM *block)
void ff_bink_idct_add_c (uint8_t *dest, int linesize, DCTELEM *block)
void ff_bink_idct_put_c (uint8_t *dest, int linesize, DCTELEM *block)
void ff_put_cavs_qpel8_mc00_c (uint8_t *dst, uint8_t *src, int stride)
void ff_avg_cavs_qpel8_mc00_c (uint8_t *dst, uint8_t *src, int stride)
void ff_put_cavs_qpel16_mc00_c (uint8_t *dst, uint8_t *src, int stride)
void ff_avg_cavs_qpel16_mc00_c (uint8_t *dst, uint8_t *src, int stride)
void ff_put_vc1_mspel_mc00_c (uint8_t *dst, const uint8_t *src, int stride, int rnd)
void ff_avg_vc1_mspel_mc00_c (uint8_t *dst, const uint8_t *src, int stride, int rnd)
void ff_ea_idct_put_c (uint8_t *dest, int linesize, DCTELEM *block)
void ff_img_copy_plane (uint8_t *dst, int dst_wrap, const uint8_t *src, int src_wrap, int width, int height)
void ff_shrink22 (uint8_t *dst, int dst_wrap, const uint8_t *src, int src_wrap, int width, int height)
void ff_shrink44 (uint8_t *dst, int dst_wrap, const uint8_t *src, int src_wrap, int width, int height)
void ff_shrink88 (uint8_t *dst, int dst_wrap, const uint8_t *src, int src_wrap, int width, int height)
void ff_gmc_c (uint8_t *dst, uint8_t *src, int stride, int h, int ox, int oy, int dxx, int dxy, int dyx, int dyy, int shift, int r, int width, int height)
void ff_init_scantable (uint8_t *, ScanTable *st, const uint8_t *src_scantable)
void ff_emulated_edge_mc (uint8_t *buf, uint8_t *src, int linesize, int block_w, int block_h, int src_x, int src_y, int w, int h)
 Copies a rectangular area of samples to a temporary buffer and replicates the boarder samples.
void dsputil_static_init (void)
void dsputil_init (DSPContext *p, AVCodecContext *avctx)
int ff_check_alignment (void)
void ff_block_permute (DCTELEM *block, uint8_t *permutation, const uint8_t *scantable, int last)
 permute block according to permuatation.
void ff_set_cmp (DSPContext *c, me_cmp_func *cmp, int type)
static uint32_t rnd_avg32 (uint32_t a, uint32_t b)
static uint32_t no_rnd_avg32 (uint32_t a, uint32_t b)
static int get_penalty_factor (int lambda, int lambda2, int type)
int mm_support (void)
void dsputil_init_alpha (DSPContext *c, AVCodecContext *avctx)
void dsputil_init_arm (DSPContext *c, AVCodecContext *avctx)
void dsputil_init_bfin (DSPContext *c, AVCodecContext *avctx)
void dsputil_init_mlib (DSPContext *c, AVCodecContext *avctx)
void dsputil_init_mmi (DSPContext *c, AVCodecContext *avctx)
void dsputil_init_mmx (DSPContext *c, AVCodecContext *avctx)
void dsputil_init_ppc (DSPContext *c, AVCodecContext *avctx)
void dsputil_init_sh4 (DSPContext *c, AVCodecContext *avctx)
void dsputil_init_vis (DSPContext *c, AVCodecContext *avctx)
void ff_dsputil_init_dwt (DSPContext *c)
void ff_cavsdsp_init (DSPContext *c, AVCodecContext *avctx)
void ff_rv30dsp_init (DSPContext *c, AVCodecContext *avctx)
void ff_rv40dsp_init (DSPContext *c, AVCodecContext *avctx)
void ff_vc1dsp_init (DSPContext *c, AVCodecContext *avctx)
void ff_intrax8dsp_init (DSPContext *c, AVCodecContext *avctx)
void ff_mlp_init (DSPContext *c, AVCodecContext *avctx)
void ff_mlp_init_x86 (DSPContext *c, AVCodecContext *avctx)
static void emms (void)
void get_psnr (uint8_t *orig_image[3], uint8_t *coded_image[3], int orig_linesize[3], int coded_linesize, AVCodecContext *avctx)
static void copy_block2 (uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, int h)
static void copy_block4 (uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, int h)
static void copy_block8 (uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, int h)
static void copy_block9 (uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, int h)
static void copy_block16 (uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, int h)
static void copy_block17 (uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, int h)

Variables

const uint8_t ff_alternate_horizontal_scan [64]
const uint8_t ff_alternate_vertical_scan [64]
const uint8_t ff_zigzag_direct [64]
const uint8_t ff_zigzag248_direct [64]
uint32_t ff_squareTbl [512]
uint8_t ff_cropTbl [256+2 *MAX_NEG_CROP]
int mm_flags


Detailed Description

DSP utils.

note, many functions in here may use MMX which trashes the FPU state, it is absolutely necessary to call emms_c() between dsp & float/double code

Definition in file dsputil.h.


Define Documentation

#define BASIS_SHIFT   16

#define BYTE_VEC32 (  )     ((c)*0x01010101UL)

Definition at line 584 of file dsputil.h.

Referenced by no_rnd_avg32(), and rnd_avg32().

#define CALL_2X_PIXELS ( a,
b,
 ) 

Value:

static void a(uint8_t *block, const uint8_t *pixels, int line_size, int h){\
    b(block  , pixels  , line_size, h);\
    b(block+n, pixels+n, line_size, h);\
}

Definition at line 174 of file dsputil.h.

#define DEF_OLD_QPEL ( name   ) 

Value:

void ff_put_        ## name (uint8_t *dst/*align width (8 or 16)*/, uint8_t *src/*align 1*/, int stride);\
void ff_put_no_rnd_ ## name (uint8_t *dst/*align width (8 or 16)*/, uint8_t *src/*align 1*/, int stride);\
void ff_avg_        ## name (uint8_t *dst/*align width (8 or 16)*/, uint8_t *src/*align 1*/, int stride);

Definition at line 156 of file dsputil.h.

#define EDGE_WIDTH   16

 
#define emms_c (  ) 

Value:

{\
    if (mm_flags & FF_MM_MMX)\
        emms();\
}
Empty mmx state.

this must be called between any dsp function and float/double code. for example sin(); dsp->idct_put(); emms_c(); cos()

Definition at line 661 of file dsputil.h.

 
#define emms_c (  ) 

#define FF_LIBMPEG2_IDCT_PERM   2

#define FF_NO_IDCT_PERM   1

#define FF_PARTTRANS_IDCT_PERM   5

Definition at line 493 of file dsputil.h.

Referenced by dsputil_init(), dsputil_init_mmx(), and ff_dsputil_init_neon().

#define FF_SIMPLE_IDCT_PERM   3

Definition at line 491 of file dsputil.h.

Referenced by dct_quantize_TMPL(), dsputil_init(), and dsputil_init_mmx().

#define FF_SSE2_IDCT_PERM   6

Definition at line 494 of file dsputil.h.

Referenced by dsputil_init(), and dsputil_init_mmx().

#define FF_TRANSPOSE_IDCT_PERM   4

#define LOCAL_ALIGNED ( a,
t,
v,
s,
...   ) 

Value:

uint8_t la_##v[sizeof(t s __VA_ARGS__) + (a)];              \
    t (*v) __VA_ARGS__ = (void *)FFALIGN((uintptr_t)la_##v, a)

Definition at line 692 of file dsputil.h.

#define LOCAL_ALIGNED_16 ( t,
v,
s,
...   )     LOCAL_ALIGNED(16, t, v, s, __VA_ARGS__)

#define LOCAL_ALIGNED_8 ( t,
v,
s,
...   )     LOCAL_ALIGNED(8, t, v, s, __VA_ARGS__)

Definition at line 699 of file dsputil.h.

Referenced by ff_h264_filter_mb_fast().

#define MAX_NEG_CROP   1024

#define RECON_SHIFT   6

#define STRIDE_ALIGN   8

Definition at line 689 of file dsputil.h.

Referenced by avcodec_align_dimensions2(), and fill_rectangle().

#define WRAPPER8_16 ( name8,
name16   ) 

Value:

static int name16(void /*MpegEncContext*/ *s, uint8_t *dst, uint8_t *src, int stride, int h){\
    return name8(s, dst           , src           , stride, h)\
          +name8(s, dst+8         , src+8         , stride, h);\
}

Definition at line 713 of file dsputil.h.

#define WRAPPER8_16_SQ ( name8,
name16   ) 

Value:

static int name16(void /*MpegEncContext*/ *s, uint8_t *dst, uint8_t *src, int stride, int h){\
    int score=0;\
    score +=name8(s, dst           , src           , stride, 8);\
    score +=name8(s, dst+8         , src+8         , stride, 8);\
    if(h==16){\
        dst += 8*stride;\
        src += 8*stride;\
        score +=name8(s, dst           , src           , stride, 8);\
        score +=name8(s, dst+8         , src+8         , stride, 8);\
    }\
    return score;\
}

Definition at line 719 of file dsputil.h.


Typedef Documentation

typedef short DCTELEM

Definition at line 39 of file dsputil.h.

typedef void(* h264_chroma_mc_func)(uint8_t *dst, uint8_t *src, int srcStride, int h, int x, int y)

Definition at line 152 of file dsputil.h.

typedef int(* me_cmp_func)(void *s, uint8_t *blk1, uint8_t *blk2, int line_size, int h)

Definition at line 183 of file dsputil.h.

typedef void(* op_fill_func)(uint8_t *block, uint8_t value, int line_size, int h)

Definition at line 154 of file dsputil.h.

typedef void(* op_pixels_func)(uint8_t *block, const uint8_t *pixels, int line_size, int h)

Definition at line 149 of file dsputil.h.

typedef void(* qpel_mc_func)(uint8_t *dst, uint8_t *src, int stride)

Definition at line 151 of file dsputil.h.

typedef void(* tpel_mc_func)(uint8_t *block, const uint8_t *pixels, int line_size, int w, int h)

Definition at line 150 of file dsputil.h.


Function Documentation

static void copy_block16 ( uint8_t *  dst,
const uint8_t *  src,
int  dstStride,
int  srcStride,
int  h 
) [inline, static]

Definition at line 781 of file dsputil.h.

static void copy_block17 ( uint8_t *  dst,
const uint8_t *  src,
int  dstStride,
int  srcStride,
int  h 
) [inline, static]

Definition at line 795 of file dsputil.h.

static void copy_block2 ( uint8_t *  dst,
const uint8_t *  src,
int  dstStride,
int  srcStride,
int  h 
) [inline, static]

Definition at line 734 of file dsputil.h.

static void copy_block4 ( uint8_t *  dst,
const uint8_t *  src,
int  dstStride,
int  srcStride,
int  h 
) [inline, static]

Definition at line 745 of file dsputil.h.

static void copy_block8 ( uint8_t *  dst,
const uint8_t *  src,
int  dstStride,
int  srcStride,
int  h 
) [inline, static]

Definition at line 756 of file dsputil.h.

Referenced by rd8x8_c().

static void copy_block9 ( uint8_t *  dst,
const uint8_t *  src,
int  dstStride,
int  srcStride,
int  h 
) [inline, static]

Definition at line 768 of file dsputil.h.

void dsputil_init ( DSPContext p,
AVCodecContext avctx 
)

void dsputil_init_alpha ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 271 of file dsputil_alpha.c.

Referenced by dsputil_init().

void dsputil_init_arm ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 81 of file dsputil_init_arm.c.

Referenced by dsputil_init().

void dsputil_init_bfin ( DSPContext c,
AVCodecContext avctx 
)

Halfpel motion compensation with rounding (a+b+1)>>1. This is an array[4][4] of motion compensation functions for 4 horizontal blocksizes (8,16) and the 4 halfpel positions *pixels_tab[ 0->16xH 1->8xH ][ xhalfpel + 2*yhalfpel ]

Parameters:
block destination where the result is stored
pixels source
line_size number of bytes in a horizontal line of block
h height

Definition at line 198 of file dsputil_bfin.c.

Referenced by dsputil_init().

void dsputil_init_mlib ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 422 of file dsputil_mlib.c.

Referenced by dsputil_init().

void dsputil_init_mmi ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 142 of file dsputil_mmi.c.

Referenced by dsputil_init().

void dsputil_init_mmx ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 2496 of file dsputil_mmx.c.

Referenced by dsputil_init().

void dsputil_init_ppc ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 232 of file dsputil_ppc.c.

Referenced by dsputil_init().

void dsputil_init_sh4 ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 92 of file dsputil_sh4.c.

Referenced by dsputil_init().

void dsputil_init_vis ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 3952 of file dsputil_vis.c.

Referenced by dsputil_init().

void dsputil_static_init ( void   ) 

Definition at line 4143 of file dsputil.c.

Referenced by avcodec_init().

static void emms ( void   )  [inline, static]

Definition at line 655 of file dsputil.h.

void fdct_ifast ( DCTELEM data  ) 

Definition at line 210 of file jfdctfst.c.

Referenced by dct_quantize_trellis_c(), dsputil_init(), and ff_convert_matrix().

void fdct_ifast248 ( DCTELEM data  ) 

Definition at line 276 of file jfdctfst.c.

Referenced by dsputil_init().

void ff_avg_cavs_qpel16_mc00_c ( uint8_t *  dst,
uint8_t *  src,
int  stride 
)

void ff_avg_cavs_qpel8_mc00_c ( uint8_t *  dst,
uint8_t *  src,
int  stride 
)

void ff_avg_vc1_mspel_mc00_c ( uint8_t *  dst,
const uint8_t *  src,
int  stride,
int  rnd 
)

Referenced by ff_vc1dsp_init().

void ff_bink_idct_add_c ( uint8_t *  dest,
int  linesize,
DCTELEM block 
)

Definition at line 93 of file binkidct.c.

Referenced by dsputil_init().

void ff_bink_idct_c ( DCTELEM block  ) 

Definition at line 81 of file binkidct.c.

Referenced by dsputil_init(), and ff_bink_idct_add_c().

void ff_bink_idct_put_c ( uint8_t *  dest,
int  linesize,
DCTELEM block 
)

Definition at line 103 of file binkidct.c.

Referenced by dsputil_init().

void ff_block_permute ( DCTELEM block,
uint8_t *  permutation,
const uint8_t *  scantable,
int  last 
)

permute block according to permuatation.

Parameters:
last last non zero element in scantable order
permute block according to permuatation.

Parameters:
block the block which will be permuted according to the given permutation vector
permutation the permutation vector
last the last non zero coefficient in scantable order, used to speed the permutation up
scantable the used scantable, this is only used to speed the permutation up, the block is not (inverse) permutated to scantable order!

Definition at line 3120 of file dsputil.c.

Referenced by dct_quantize_altivec(), dct_quantize_bfin(), and dct_quantize_c().

void ff_cavsdsp_init ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 513 of file cavsdsp.c.

Referenced by dsputil_init().

int ff_check_alignment ( void   ) 

Definition at line 4160 of file dsputil.c.

Referenced by dsputil_init(), encode_thread(), estimate_motion_thread(), and mb_var_thread().

void ff_dsputil_init_dwt ( DSPContext c  ) 

Definition at line 828 of file dwt.c.

Referenced by dsputil_init().

void ff_ea_idct_put_c ( uint8_t *  dest,
int  linesize,
DCTELEM block 
)

Definition at line 79 of file eaidct.c.

Referenced by dsputil_init().

void ff_emulated_edge_mc ( uint8_t *  buf,
uint8_t *  src,
int  linesize,
int  block_w,
int  block_h,
int  src_x,
int  src_y,
int  w,
int  h 
)

Copies a rectangular area of samples to a temporary buffer and replicates the boarder samples.

Parameters:
buf destination buffer
src source buffer
linesize number of bytes between 2 vertically adjacent samples in both the source and destination buffers
block_w width of block
block_h height of block
src_x x coordinate of the top left sample of the block in the source buffer
src_y y coordinate of the top left sample of the block in the source buffer
w width of the source buffer
h height of the source buffer

Definition at line 372 of file dsputil.c.

Referenced by chroma_4mv_motion(), chroma_4mv_motion_lowres(), encode_mb_internal(), ff_mspel_motion(), gmc1_motion(), gmc_mmx(), hpel_motion(), hpel_motion_lowres(), mc_dir_part(), mca(), mpeg_motion_internal(), mpeg_motion_lowres(), MPV_motion_internal(), qpel_motion(), render_slice(), rv34_mc(), svq3_mc_dir_part(), vc1_interp_mc(), vc1_mc_1mv(), vc1_mc_4mv_chroma(), vc1_mc_4mv_luma(), and vp56_mc().

void ff_fdct248_islow ( DCTELEM data  ) 

Definition at line 346 of file jfdctint.c.

Referenced by dsputil_init().

void ff_fdct_mmx ( DCTELEM block  ) 

Referenced by dsputilenc_init_mmx().

void ff_fdct_mmx2 ( DCTELEM block  ) 

Referenced by dsputilenc_init_mmx().

void ff_fdct_sse2 ( DCTELEM block  ) 

Referenced by dsputilenc_init_mmx().

void ff_float_to_int16_c ( int16_t *  dst,
const float *  src,
long  len 
)

Definition at line 3970 of file dsputil.c.

Referenced by decode_init(), and dsputil_init().

void ff_float_to_int16_interleave_c ( int16_t *  dst,
const float **  src,
long  len,
int  channels 
)

void ff_gmc_c ( uint8_t *  dst,
uint8_t *  src,
int  stride,
int  h,
int  ox,
int  oy,
int  dxx,
int  dxy,
int  dyx,
int  dyy,
int  shift,
int  r,
int  width,
int  height 
)

Definition at line 1249 of file dsputil.c.

Referenced by dsputil_init(), and gmc_mmx().

void ff_h264_idct8_add4_c ( uint8_t *  dst,
const int *  blockoffset,
DCTELEM block,
int  stride,
const uint8_t  nnzc[6 *8] 
)

Definition at line 199 of file h264idct.c.

Referenced by ff_h264dsp_init().

void ff_h264_idct8_add_c ( uint8_t *  dst,
DCTELEM block,
int  stride 
)

void ff_h264_idct8_dc_add_c ( uint8_t *  dst,
DCTELEM block,
int  stride 
)

Definition at line 156 of file h264idct.c.

Referenced by ff_h264_idct8_add4_c(), and ff_h264dsp_init().

void ff_h264_idct_add16_c ( uint8_t *  dst,
const int *  blockoffset,
DCTELEM block,
int  stride,
const uint8_t  nnzc[6 *8] 
)

Definition at line 180 of file h264idct.c.

Referenced by ff_h264dsp_init().

void ff_h264_idct_add16intra_c ( uint8_t *  dst,
const int *  blockoffset,
DCTELEM block,
int  stride,
const uint8_t  nnzc[6 *8] 
)

Definition at line 191 of file h264idct.c.

Referenced by ff_h264dsp_init().

void ff_h264_idct_add8_c ( uint8_t **  dest,
const int *  blockoffset,
DCTELEM block,
int  stride,
const uint8_t  nnzc[6 *8] 
)

Definition at line 210 of file h264idct.c.

Referenced by ff_h264dsp_init().

void ff_h264_idct_add_c ( uint8_t *  dst,
DCTELEM block,
int  stride 
)

void ff_h264_idct_dc_add_c ( uint8_t *  dst,
DCTELEM block,
int  stride 
)

void ff_h264_lowres_idct_add_c ( uint8_t *  dst,
int  stride,
DCTELEM block 
)

Definition at line 65 of file h264idct.c.

Referenced by dsputil_init().

void ff_h264_lowres_idct_put_c ( uint8_t *  dst,
int  stride,
DCTELEM block 
)

Definition at line 69 of file h264idct.c.

Referenced by dsputil_init().

void ff_img_copy_plane ( uint8_t *  dst,
int  dst_wrap,
const uint8_t *  src,
int  src_wrap,
int  width,
int  height 
)

Definition at line 903 of file imgconvert.c.

Referenced by av_picture_copy(), and dsputil_init().

void ff_init_scantable ( uint8_t *  ,
ScanTable st,
const uint8_t *  src_scantable 
)

void ff_intrax8dsp_init ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 416 of file intrax8dsp.c.

Referenced by dsputil_init().

void ff_jpeg_fdct_islow ( DCTELEM data  ) 

Definition at line 260 of file jfdctint.c.

Referenced by dsputil_init(), and ff_convert_matrix().

void ff_mlp_init ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 58 of file mlpdsp.c.

Referenced by dsputil_init().

void ff_mlp_init_x86 ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 176 of file mlpdsp.c.

Referenced by ff_mlp_init().

void ff_put_cavs_qpel16_mc00_c ( uint8_t *  dst,
uint8_t *  src,
int  stride 
)

void ff_put_cavs_qpel8_mc00_c ( uint8_t *  dst,
uint8_t *  src,
int  stride 
)

void ff_put_vc1_mspel_mc00_c ( uint8_t *  dst,
const uint8_t *  src,
int  stride,
int  rnd 
)

Referenced by ff_vc1dsp_init().

void ff_rv30dsp_init ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 254 of file rv30dsp.c.

Referenced by dsputil_init().

void ff_rv40dsp_init ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 287 of file rv40dsp.c.

Referenced by dsputil_init().

void ff_set_cmp ( DSPContext c,
me_cmp_func cmp,
int  type 
)

Definition at line 3145 of file dsputil.c.

Referenced by dvvideo_init(), ff_init_me(), and MPV_encode_init().

void ff_shrink22 ( uint8_t *  dst,
int  dst_wrap,
const uint8_t *  src,
int  src_wrap,
int  width,
int  height 
)

Definition at line 999 of file imgconvert.c.

Referenced by dsputil_init().

void ff_shrink44 ( uint8_t *  dst,
int  dst_wrap,
const uint8_t *  src,
int  src_wrap,
int  width,
int  height 
)

Definition at line 1032 of file imgconvert.c.

Referenced by dsputil_init().

void ff_shrink88 ( uint8_t *  dst,
int  dst_wrap,
const uint8_t *  src,
int  src_wrap,
int  width,
int  height 
)

Definition at line 1063 of file imgconvert.c.

Referenced by dsputil_init().

void ff_vc1dsp_init ( DSPContext c,
AVCodecContext avctx 
)

Definition at line 611 of file vc1dsp.c.

Referenced by dsputil_init().

void ff_vector_fmul_window_c ( float *  dst,
const float *  src0,
const float *  src1,
const float *  win,
float  add_bias,
int  len 
)

Definition at line 3819 of file dsputil.c.

Referenced by dsputil_init(), vector_fmul_window_3dnow2(), and vector_fmul_window_sse().

void ff_vp3_h_loop_filter_c ( uint8_t *  src,
int  stride,
int *  bounding_values 
)

Definition at line 261 of file vp3dsp.c.

Referenced by dsputil_init().

void ff_vp3_idct_add_c ( uint8_t *  dest,
int  line_size,
DCTELEM block 
)

Definition at line 222 of file vp3dsp.c.

Referenced by dsputil_init().

void ff_vp3_idct_c ( DCTELEM block  ) 

Definition at line 214 of file vp3dsp.c.

Referenced by dsputil_init().

void ff_vp3_idct_dc_add_c ( uint8_t *  dest,
int  line_size,
const DCTELEM block 
)

Definition at line 226 of file vp3dsp.c.

Referenced by dsputil_init().

void ff_vp3_idct_put_c ( uint8_t *  dest,
int  line_size,
DCTELEM block 
)

Definition at line 218 of file vp3dsp.c.

Referenced by dsputil_init().

void ff_vp3_v_loop_filter_c ( uint8_t *  src,
int  stride,
int *  bounding_values 
)

Definition at line 245 of file vp3dsp.c.

Referenced by dsputil_init().

void ff_vp6_filter_diag4_c ( uint8_t *  dst,
uint8_t *  src,
int  stride,
const int16_t *  h_weights,
const int16_t *  v_weights 
)

Definition at line 28 of file vp6dsp.c.

Referenced by dsputil_init().

void ff_wmv2_idct_c ( DCTELEM data  ) 

Definition at line 4072 of file dsputil.c.

Referenced by dsputil_init(), ff_wmv2_idct_add_c(), and ff_wmv2_idct_put_c().

static int get_penalty_factor ( int  lambda,
int  lambda2,
int  type 
) [inline, static]

void get_psnr ( uint8_t *  orig_image[3],
uint8_t *  coded_image[3],
int  orig_linesize[3],
int  coded_linesize,
AVCodecContext avctx 
)

void j_rev_dct ( DCTELEM data  ) 

void j_rev_dct1 ( DCTELEM data  ) 

Referenced by dsputil_init().

void j_rev_dct2 ( DCTELEM data  ) 

void j_rev_dct4 ( DCTELEM data  ) 

int mm_support ( void   ) 

static uint32_t no_rnd_avg32 ( uint32_t  a,
uint32_t  b 
) [inline, static]

Definition at line 591 of file dsputil.h.

static uint32_t rnd_avg32 ( uint32_t  a,
uint32_t  b 
) [inline, static]

Definition at line 586 of file dsputil.h.


Variable Documentation

const uint8_t ff_alternate_horizontal_scan[64]

Definition at line 77 of file dsputil.c.

Referenced by decode_vop_header(), and ff_dct_common_init().

const uint8_t ff_alternate_vertical_scan[64]

uint8_t ff_cropTbl[256+2 *MAX_NEG_CROP]

Definition at line 43 of file dsputil.c.

uint32_t ff_squareTbl[512]

Definition at line 44 of file dsputil.c.

Referenced by dsputil_static_init(), pix_norm1_c(), sse(), sse16_c(), sse4_c(), and sse8_c().

const uint8_t ff_zigzag248_direct[64]

Definition at line 63 of file dsputil.c.

Referenced by dv_init_enc_block(), and dvvideo_init().

const uint8_t ff_zigzag_direct[64]

int mm_flags


Generated on Fri Oct 26 02:36:51 2012 for FFmpeg by  doxygen 1.5.8