#include "libavutil/imgutils.h"
#include "avcodec.h"
#include "dsputil.h"
#include "simple_idct.h"
#include "faandct.h"
#include "faanidct.h"
#include "mathops.h"
#include "mpegvideo.h"
#include "config.h"
#include "vorbis.h"
#include "diracdsp.h"
#include "dsputil_template.c"
Go to the source code of this file.
Defines | |
| #define | pixeltmp int16_t |
| #define | BIT_DEPTH 9 |
| #define | BIT_DEPTH 10 |
| #define | pixeltmp int32_t |
| #define | BIT_DEPTH 12 |
| #define | BIT_DEPTH 14 |
| #define | pixeltmp int16_t |
| #define | BIT_DEPTH 8 |
| #define | pb_7f (~0UL/255 * 0x7f) |
| #define | pb_80 (~0UL/255 * 0x80) |
| #define | avg2(a, b) ((a+b+1)>>1) |
| #define | avg4(a, b, c, d) ((a+b+c+d+2)>>2) |
| #define | QPEL_MC(r, OPNAME, RND, OP) |
| #define | op_avg(a, b) a = (((a)+cm[((b) + 16)>>5]+1)>>1) |
| #define | op_avg_no_rnd(a, b) a = (((a)+cm[((b) + 15)>>5])>>1) |
| #define | op_put(a, b) a = cm[((b) + 16)>>5] |
| #define | op_put_no_rnd(a, b) a = cm[((b) + 15)>>5] |
| #define | put_qpel8_mc00_c ff_put_pixels8x8_c |
| #define | avg_qpel8_mc00_c ff_avg_pixels8x8_c |
| #define | put_qpel16_mc00_c ff_put_pixels16x16_c |
| #define | avg_qpel16_mc00_c ff_avg_pixels16x16_c |
| #define | put_no_rnd_qpel8_mc00_c ff_put_pixels8x8_c |
| #define | put_no_rnd_qpel16_mc00_c ff_put_pixels16x16_8_c |
| #define | B 0 |
| #define | G 1 |
| #define | R 2 |
| #define | A 3 |
| #define | BUTTERFLY2(o1, o2, i1, i2) |
| #define | BUTTERFLY1(x, y) |
| #define | BUTTERFLYA(x, y) (FFABS((x)+(y)) + FFABS((x)-(y))) |
| #define | VSAD_INTRA(size) |
| #define | SQ(a) ((a)*(a)) |
| #define | VSSE_INTRA(size) |
| #define | W0 2048 |
| #define | W1 2841 |
| #define | W2 2676 |
| #define | W3 2408 |
| #define | W4 2048 |
| #define | W5 1609 |
| #define | W6 1108 |
| #define | W7 565 |
| #define | dspfunc(PFX, IDX, NUM) |
| #define | SET_CMP_FUNC(name) |
| #define | FUNC(f, depth) f ## _ ## depth |
| #define | FUNCC(f, depth) f ## _ ## depth ## _c |
| #define | dspfunc1(PFX, IDX, NUM, depth) |
| #define | dspfunc2(PFX, IDX, NUM, depth) |
| #define | BIT_DEPTH_FUNCS(depth, dct) |
Functions | |
| void | ff_init_scantable (uint8_t *permutation, ScanTable *st, const uint8_t *src_scantable) |
| void | ff_init_scantable_permutation (uint8_t *idct_permutation, int idct_permutation_type) |
| static int | pix_sum_c (uint8_t *pix, int line_size) |
| static int | pix_norm1_c (uint8_t *pix, int line_size) |
| static void | bswap_buf (uint32_t *dst, const uint32_t *src, int w) |
| static void | bswap16_buf (uint16_t *dst, const uint16_t *src, int len) |
| static int | sse4_c (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h) |
| static int | sse8_c (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h) |
| static int | sse16_c (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h) |
| static void | diff_pixels_c (DCTELEM *av_restrict block, const uint8_t *s1, const uint8_t *s2, int stride) |
| static void | put_pixels_clamped_c (const DCTELEM *block, uint8_t *av_restrict pixels, int line_size) |
| static void | put_pixels_clamped4_c (const DCTELEM *block, uint8_t *av_restrict pixels, int line_size) |
| static void | put_pixels_clamped2_c (const DCTELEM *block, uint8_t *av_restrict pixels, int line_size) |
| static void | put_signed_pixels_clamped_c (const DCTELEM *block, uint8_t *av_restrict pixels, int line_size) |
| static void | add_pixels_clamped_c (const DCTELEM *block, uint8_t *av_restrict pixels, int line_size) |
| static void | add_pixels_clamped4_c (const DCTELEM *block, uint8_t *av_restrict pixels, int line_size) |
| static void | add_pixels_clamped2_c (const DCTELEM *block, uint8_t *av_restrict pixels, int line_size) |
| static int | sum_abs_dctelem_c (DCTELEM *block) |
| static void | fill_block16_c (uint8_t *block, uint8_t value, int line_size, int h) |
| static void | fill_block8_c (uint8_t *block, uint8_t value, int line_size, int h) |
| static void | gmc1_c (uint8_t *dst, uint8_t *src, int stride, int h, int x16, int y16, int rounder) |
| 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) |
| static void | put_tpel_pixels_mc00_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | put_tpel_pixels_mc10_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | put_tpel_pixels_mc20_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | put_tpel_pixels_mc01_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | put_tpel_pixels_mc11_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | put_tpel_pixels_mc12_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | put_tpel_pixels_mc02_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | put_tpel_pixels_mc21_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | put_tpel_pixels_mc22_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | avg_tpel_pixels_mc00_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | avg_tpel_pixels_mc10_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | avg_tpel_pixels_mc20_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | avg_tpel_pixels_mc01_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | avg_tpel_pixels_mc11_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | avg_tpel_pixels_mc12_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | avg_tpel_pixels_mc02_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | avg_tpel_pixels_mc21_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | avg_tpel_pixels_mc22_c (uint8_t *dst, const uint8_t *src, int stride, int width, int height) |
| static void | wmv2_mspel8_h_lowpass (uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h) |
| static void | wmv2_mspel8_v_lowpass (uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int w) |
| static void | put_mspel8_mc10_c (uint8_t *dst, uint8_t *src, int stride) |
| static void | put_mspel8_mc20_c (uint8_t *dst, uint8_t *src, int stride) |
| static void | put_mspel8_mc30_c (uint8_t *dst, uint8_t *src, int stride) |
| static void | put_mspel8_mc02_c (uint8_t *dst, uint8_t *src, int stride) |
| static void | put_mspel8_mc12_c (uint8_t *dst, uint8_t *src, int stride) |
| static void | put_mspel8_mc32_c (uint8_t *dst, uint8_t *src, int stride) |
| static void | put_mspel8_mc22_c (uint8_t *dst, uint8_t *src, int stride) |
| static void | h263_v_loop_filter_c (uint8_t *src, int stride, int qscale) |
| static void | h263_h_loop_filter_c (uint8_t *src, int stride, int qscale) |
| static void | h261_loop_filter_c (uint8_t *src, int stride) |
| static int | pix_abs16_c (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h) |
| static int | pix_abs16_x2_c (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h) |
| static int | pix_abs16_y2_c (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h) |
| static int | pix_abs16_xy2_c (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h) |
| static int | pix_abs8_c (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h) |
| static int | pix_abs8_x2_c (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h) |
| static int | pix_abs8_y2_c (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h) |
| static int | pix_abs8_xy2_c (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h) |
| static int | nsse16_c (void *v, uint8_t *s1, uint8_t *s2, int stride, int h) |
| static int | nsse8_c (void *v, uint8_t *s1, uint8_t *s2, int stride, int h) |
| static int | try_8x8basis_c (int16_t rem[64], int16_t weight[64], int16_t basis[64], int scale) |
| static void | add_8x8basis_c (int16_t rem[64], int16_t basis[64], int scale) |
| void | ff_block_permute (DCTELEM *block, uint8_t *permutation, const uint8_t *scantable, int last) |
| Permute an 8x8 block. | |
| static int | zero_cmp (void *s, uint8_t *a, uint8_t *b, int stride, int h) |
| void | ff_set_cmp (DSPContext *c, me_cmp_func *cmp, int type) |
| static void | add_bytes_c (uint8_t *dst, uint8_t *src, int w) |
| static void | diff_bytes_c (uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int w) |
| static void | add_hfyu_median_prediction_c (uint8_t *dst, const uint8_t *src1, const uint8_t *diff, int w, int *left, int *left_top) |
| static void | sub_hfyu_median_prediction_c (uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int w, int *left, int *left_top) |
| static int | add_hfyu_left_prediction_c (uint8_t *dst, const uint8_t *src, int w, int acc) |
| static void | add_hfyu_left_prediction_bgr32_c (uint8_t *dst, const uint8_t *src, int w, int *red, int *green, int *blue, int *alpha) |
| static int | hadamard8_diff8x8_c (void *s, uint8_t *dst, uint8_t *src, int stride, int h) |
| static int | hadamard8_intra8x8_c (void *s, uint8_t *src, uint8_t *dummy, int stride, int h) |
| static int | dct_sad8x8_c (void *c, uint8_t *src1, uint8_t *src2, int stride, int h) |
| static int | dct_max8x8_c (void *c, uint8_t *src1, uint8_t *src2, int stride, int h) |
| static int | quant_psnr8x8_c (void *c, uint8_t *src1, uint8_t *src2, int stride, int h) |
| static int | rd8x8_c (void *c, uint8_t *src1, uint8_t *src2, int stride, int h) |
| static int | bit8x8_c (void *c, uint8_t *src1, uint8_t *src2, int stride, int h) |
| static int | vsad16_c (void *c, uint8_t *s1, uint8_t *s2, int stride, int h) |
| static int | vsse16_c (void *c, uint8_t *s1, uint8_t *s2, int stride, int h) |
| static int | ssd_int8_vs_int16_c (const int8_t *pix1, const int16_t *pix2, int size) |
| static void | vector_fmul_reverse_c (float *dst, const float *src0, const float *src1, int len) |
| static void | vector_fmul_add_c (float *dst, const float *src0, const float *src1, const float *src2, int len) |
| static void | vector_fmul_window_c (float *dst, const float *src0, const float *src1, const float *win, int len) |
| static void | vector_fmul_scalar_c (float *dst, const float *src, float mul, int len) |
| static void | butterflies_float_c (float *av_restrict v1, float *av_restrict v2, int len) |
| static void | butterflies_float_interleave_c (float *dst, const float *src0, const float *src1, int len) |
| float | ff_scalarproduct_float_c (const float *v1, const float *v2, int len) |
| Return the scalar product of two vectors. | |
| static uint32_t | clipf_c_one (uint32_t a, uint32_t mini, uint32_t maxi, uint32_t maxisign) |
| static void | vector_clipf_c_opposite_sign (float *dst, const float *src, float *min, float *max, int len) |
| static void | vector_clipf_c (float *dst, const float *src, float min, float max, int len) |
| static int32_t | scalarproduct_int16_c (const int16_t *v1, const int16_t *v2, int order) |
| static int32_t | scalarproduct_and_madd_int16_c (int16_t *v1, const int16_t *v2, const int16_t *v3, int order, int mul) |
| static void | apply_window_int16_c (int16_t *output, const int16_t *input, const int16_t *window, unsigned int len) |
| static void | vector_clip_int32_c (int32_t *dst, const int32_t *src, int32_t min, int32_t max, unsigned int len) |
| static void | wmv2_idct_row (short *b) |
| static void | wmv2_idct_col (short *b) |
| void | ff_wmv2_idct_c (short *block) |
| static void | ff_wmv2_idct_put_c (uint8_t *dest, int line_size, DCTELEM *block) |
| static void | ff_wmv2_idct_add_c (uint8_t *dest, int line_size, DCTELEM *block) |
| static void | ff_jref_idct_put (uint8_t *dest, int line_size, DCTELEM *block) |
| static void | ff_jref_idct_add (uint8_t *dest, int line_size, DCTELEM *block) |
| static void | ff_jref_idct4_put (uint8_t *dest, int line_size, DCTELEM *block) |
| static void | ff_jref_idct4_add (uint8_t *dest, int line_size, DCTELEM *block) |
| static void | ff_jref_idct2_put (uint8_t *dest, int line_size, DCTELEM *block) |
| static void | ff_jref_idct2_add (uint8_t *dest, int line_size, DCTELEM *block) |
| static void | ff_jref_idct1_put (uint8_t *dest, int line_size, DCTELEM *block) |
| static void | ff_jref_idct1_add (uint8_t *dest, int line_size, DCTELEM *block) |
| static void | just_return (void *mem av_unused, int stride av_unused, int h av_unused) |
| av_cold void | ff_dsputil_static_init (void) |
| int | ff_check_alignment (void) |
| av_cold void | ff_dsputil_init (DSPContext *c, AVCodecContext *avctx) |
| av_cold void | dsputil_init (DSPContext *c, AVCodecContext *avctx) |
Variables | |
| uint8_t | ff_cropTbl [256+2 *MAX_NEG_CROP] = {0, } |
| uint32_t | ff_squareTbl [512] = {0, } |
| const uint8_t | ff_zigzag_direct [64] |
| const uint8_t | ff_zigzag248_direct [64] |
| uint16_t | ff_inv_zigzag_direct16 [64] |
| const uint8_t | ff_alternate_horizontal_scan [64] |
| const uint8_t | ff_alternate_vertical_scan [64] |
| static const uint8_t | simple_mmx_permutation [64] |
| static const uint8_t | idct_sse2_row_perm [8] = {0, 4, 1, 5, 2, 6, 3, 7} |
Definition in file dsputil.c.
| #define avg2 | ( | a, | |||
| b | ) | ((a+b+1)>>1) |
Definition at line 528 of file dsputil.c.
Referenced by avg_no_rnd_vc1_chroma_mc8_c(), pix_abs16_x2_c(), pix_abs16_y2_c(), pix_abs16x16_x2_mvi(), pix_abs16x16_y2_mvi(), pix_abs8_x2_c(), and pix_abs8_y2_c().
Definition at line 529 of file dsputil.c.
Referenced by pix_abs16_xy2_c(), pix_abs16x16_xy2_mvi(), and pix_abs8_xy2_c().
| #define B 0 |
Definition at line 2019 of file dsputil.c.
Referenced by add_hfyu_left_prediction_bgr32_c(), altivec_uyvy_rgb32(), avg_no_rnd_vc1_chroma_mc8_c(), blend_slice(), config_props(), decode_bgr_1(), decode_haar_block(), decode_image_block(), ff_h263_pred_motion(), ff_yuv2packedX_altivec(), find_and_decode_index(), generate_joint_tables(), gmc1_c(), horizX1Filter(), idct(), initFilter(), ipvideo_decode_block_opcode_0x2(), ipvideo_decode_block_opcode_0x3(), ipvideo_decode_block_opcode_0x4(), median_predict(), pred_16x8_motion(), pred_motion(), pred_pskip_motion(), pred_spatial_direct_motion(), put_no_rnd_vc1_chroma_mc4_c(), put_no_rnd_vc1_chroma_mc8_c(), restore_median(), restore_median_il(), rv30_decode_intra_types(), rv34_pred_mv(), rv34_pred_mv_b(), rv34_pred_mv_rv3(), rv40_decode_intra_types(), sbr_hf_assemble(), sub_left_prediction_bgr32(), vc1_pred_b_mv(), vc1_pred_mv(), vc1_pred_mv_intfr(), wmv2_pred_motion(), wv_unpack_stereo(), x8_ac_compensation(), yuv2rgb48_1_c_template(), yuv2rgb48_2_c_template(), yuv2rgb48_X_c_template(), and yuv2rgb_full_X_c_template().
| #define BIT_DEPTH_FUNCS | ( | depth, | |||
| dct | ) |
Referenced by ff_dsputil_init().
| #define BUTTERFLY1 | ( | x, | |||
| y | ) |
Value:
{\
int a,b;\
a= x;\
b= y;\
x= a+b;\
y= a-b;\
}
Definition at line 2058 of file dsputil.c.
Referenced by hadamard8_diff8x8_c(), and hadamard8_intra8x8_c().
| #define BUTTERFLY2 | ( | o1, | |||
| o2, | |||||
| i1, | |||||
| i2 | ) |
Value:
o1= (i1)+(i2);\ o2= (i1)-(i2);
Definition at line 2054 of file dsputil.c.
Referenced by hadamard8_diff8x8_c(), and hadamard8_intra8x8_c().
| #define BUTTERFLYA | ( | x, | |||
| y | ) | (FFABS((x)+(y)) + FFABS((x)-(y))) |
Definition at line 2067 of file dsputil.c.
Referenced by hadamard8_diff8x8_c(), and hadamard8_intra8x8_c().
| #define dspfunc | ( | PFX, | |||
| IDX, | |||||
| NUM | ) |
Value:
c->PFX ## _pixels_tab[IDX][ 0] = PFX ## NUM ## _mc00_c; \ c->PFX ## _pixels_tab[IDX][ 1] = PFX ## NUM ## _mc10_c; \ c->PFX ## _pixels_tab[IDX][ 2] = PFX ## NUM ## _mc20_c; \ c->PFX ## _pixels_tab[IDX][ 3] = PFX ## NUM ## _mc30_c; \ c->PFX ## _pixels_tab[IDX][ 4] = PFX ## NUM ## _mc01_c; \ c->PFX ## _pixels_tab[IDX][ 5] = PFX ## NUM ## _mc11_c; \ c->PFX ## _pixels_tab[IDX][ 6] = PFX ## NUM ## _mc21_c; \ c->PFX ## _pixels_tab[IDX][ 7] = PFX ## NUM ## _mc31_c; \ c->PFX ## _pixels_tab[IDX][ 8] = PFX ## NUM ## _mc02_c; \ c->PFX ## _pixels_tab[IDX][ 9] = PFX ## NUM ## _mc12_c; \ c->PFX ## _pixels_tab[IDX][10] = PFX ## NUM ## _mc22_c; \ c->PFX ## _pixels_tab[IDX][11] = PFX ## NUM ## _mc32_c; \ c->PFX ## _pixels_tab[IDX][12] = PFX ## NUM ## _mc03_c; \ c->PFX ## _pixels_tab[IDX][13] = PFX ## NUM ## _mc13_c; \ c->PFX ## _pixels_tab[IDX][14] = PFX ## NUM ## _mc23_c; \ c->PFX ## _pixels_tab[IDX][15] = PFX ## NUM ## _mc33_c
| #define dspfunc1 | ( | PFX, | |||
| IDX, | |||||
| NUM, | |||||
| depth | ) |
Value:
c->PFX ## _pixels_tab[IDX][0] = FUNCC(PFX ## _pixels ## NUM , depth);\ c->PFX ## _pixels_tab[IDX][1] = FUNCC(PFX ## _pixels ## NUM ## _x2 , depth);\ c->PFX ## _pixels_tab[IDX][2] = FUNCC(PFX ## _pixels ## NUM ## _y2 , depth);\ c->PFX ## _pixels_tab[IDX][3] = FUNCC(PFX ## _pixels ## NUM ## _xy2, depth)
| #define dspfunc2 | ( | PFX, | |||
| IDX, | |||||
| NUM, | |||||
| depth | ) |
Value:
c->PFX ## _pixels_tab[IDX][ 0] = FUNCC(PFX ## NUM ## _mc00, depth);\ c->PFX ## _pixels_tab[IDX][ 1] = FUNCC(PFX ## NUM ## _mc10, depth);\ c->PFX ## _pixels_tab[IDX][ 2] = FUNCC(PFX ## NUM ## _mc20, depth);\ c->PFX ## _pixels_tab[IDX][ 3] = FUNCC(PFX ## NUM ## _mc30, depth);\ c->PFX ## _pixels_tab[IDX][ 4] = FUNCC(PFX ## NUM ## _mc01, depth);\ c->PFX ## _pixels_tab[IDX][ 5] = FUNCC(PFX ## NUM ## _mc11, depth);\ c->PFX ## _pixels_tab[IDX][ 6] = FUNCC(PFX ## NUM ## _mc21, depth);\ c->PFX ## _pixels_tab[IDX][ 7] = FUNCC(PFX ## NUM ## _mc31, depth);\ c->PFX ## _pixels_tab[IDX][ 8] = FUNCC(PFX ## NUM ## _mc02, depth);\ c->PFX ## _pixels_tab[IDX][ 9] = FUNCC(PFX ## NUM ## _mc12, depth);\ c->PFX ## _pixels_tab[IDX][10] = FUNCC(PFX ## NUM ## _mc22, depth);\ c->PFX ## _pixels_tab[IDX][11] = FUNCC(PFX ## NUM ## _mc32, depth);\ c->PFX ## _pixels_tab[IDX][12] = FUNCC(PFX ## NUM ## _mc03, depth);\ c->PFX ## _pixels_tab[IDX][13] = FUNCC(PFX ## NUM ## _mc13, depth);\ c->PFX ## _pixels_tab[IDX][14] = FUNCC(PFX ## NUM ## _mc23, depth);\ c->PFX ## _pixels_tab[IDX][15] = FUNCC(PFX ## NUM ## _mc33, depth)
| #define G 1 |
Definition at line 2020 of file dsputil.c.
Referenced by add_hfyu_left_prediction_bgr32_c(), altivec_uyvy_rgb32(), blend_slice(), config_props(), decode_bgr_1(), ff_yuv2packedX_altivec(), generate_joint_tables(), idct(), sub_left_prediction_bgr32(), yuv2rgb48_1_c_template(), yuv2rgb48_2_c_template(), yuv2rgb48_X_c_template(), and yuv2rgb_full_X_c_template().
| #define op_avg | ( | a, | |||
| b | ) | a = (((a)+cm[((b) + 16)>>5]+1)>>1) |
| #define op_avg_no_rnd | ( | a, | |||
| b | ) | a = (((a)+cm[((b) + 15)>>5])>>1) |
| #define pb_7f (~0UL/255 * 0x7f) |
Definition at line 71 of file dsputil.c.
Referenced by add_bytes_c(), add_bytes_l2_c(), and diff_bytes_c().
| #define pb_80 (~0UL/255 * 0x80) |
Definition at line 72 of file dsputil.c.
Referenced by add_bytes_c(), add_bytes_l2_c(), and diff_bytes_c().
| #define R 2 |
Definition at line 2021 of file dsputil.c.
Referenced by add_hfyu_left_prediction_bgr32_c(), altivec_uyvy_rgb32(), blend_slice(), config_props(), copy_TMPL(), decode_bgr_1(), ff_yuv2packedX_altivec(), generate_joint_tables(), ls_decode_line(), ls_encode_line(), mix6to2_TMPL(), mix8to2_TMPL(), sub_left_prediction_bgr32(), sum2_TMPL(), wv_unpack_stereo(), yuv2rgb48_1_c_template(), yuv2rgb48_2_c_template(), yuv2rgb48_X_c_template(), and yuv2rgb_full_X_c_template().
| #define SET_CMP_FUNC | ( | name | ) |
| #define SQ | ( | a | ) | ((a)*(a)) |
| #define VSAD_INTRA | ( | size | ) |
Value:
static int vsad_intra##size##_c(/*MpegEncContext*/ void *c, uint8_t *s, uint8_t *dummy, int stride, int h){ \ int score=0; \ int x,y; \ \ for(y=1; y<h; y++){ \ for(x=0; x<size; x+=4){ \ score+= FFABS(s[x ] - s[x +stride]) + FFABS(s[x+1] - s[x+1+stride]) \ +FFABS(s[x+2] - s[x+2+stride]) + FFABS(s[x+3] - s[x+3+stride]); \ } \ s+= stride; \ } \ \ return score; \ }
| #define VSSE_INTRA | ( | size | ) |
Value:
static int vsse_intra##size##_c(/*MpegEncContext*/ void *c, uint8_t *s, uint8_t *dummy, int stride, int h){ \ int score=0; \ int x,y; \ \ for(y=1; y<h; y++){ \ for(x=0; x<size; x+=4){ \ score+= SQ(s[x ] - s[x +stride]) + SQ(s[x+1] - s[x+1+stride]) \ +SQ(s[x+2] - s[x+2+stride]) + SQ(s[x+3] - s[x+3+stride]); \ } \ s+= stride; \ } \ \ return score; \ }
| #define W0 2048 |
| static void add_pixels_clamped_c | ( | const DCTELEM * | block, | |
| uint8_t *av_restrict | pixels, | |||
| int | line_size | |||
| ) | [static] |
Definition at line 450 of file dsputil.c.
Referenced by ff_dsputil_init(), ff_jref_idct_add(), and ff_wmv2_idct_add_c().
| static void bswap16_buf | ( | uint16_t * | dst, | |
| const uint16_t * | src, | |||
| int | len | |||
| ) | [static] |
| static void bswap_buf | ( | uint32_t * | dst, | |
| const uint32_t * | src, | |||
| int | w | |||
| ) | [static] |
| static void butterflies_float_c | ( | float *av_restrict | v1, | |
| float *av_restrict | v2, | |||
| int | len | |||
| ) | [static] |
| static void butterflies_float_interleave_c | ( | float * | dst, | |
| const float * | src0, | |||
| const float * | src1, | |||
| int | len | |||
| ) | [static] |
| static uint32_t clipf_c_one | ( | uint32_t | a, | |
| uint32_t | mini, | |||
| uint32_t | maxi, | |||
| uint32_t | maxisign | |||
| ) | [inline, static] |
| av_cold void dsputil_init | ( | DSPContext * | c, | |
| AVCodecContext * | avctx | |||
| ) |
Definition at line 3189 of file dsputil.c.
Referenced by config_input(), config_props(), init(), and vf_open().
| void ff_block_permute | ( | DCTELEM * | block, | |
| uint8_t * | permutation, | |||
| const uint8_t * | scantable, | |||
| int | last | |||
| ) |
Permute an 8x8 block.
permute block according to permuatation.
| 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 1838 of file dsputil.c.
Referenced by dct_quantize_bfin(), and ff_dct_quantize_c().
| int ff_check_alignment | ( | void | ) |
Definition at line 2799 of file dsputil.c.
Referenced by encode_thread(), estimate_motion_thread(), ff_dsputil_init(), and mb_var_thread().
| av_cold void ff_dsputil_init | ( | DSPContext * | c, | |
| AVCodecContext * | avctx | |||
| ) |
Definition at line 2819 of file dsputil.c.
Referenced by aac_decode_init(), ac3_decode_init(), ape_decode_init(), atrac1_decode_init(), cllc_decode_init(), common_init(), decode_init(), decode_slice_header(), decoder_init(), dirac_decode_init(), dnxhd_decode_header(), dsp_init(), dsputil_init(), encode_init(), ff_ac3_encode_init(), ff_dct_common_init(), ff_dvvideo_init(), ff_mjpeg_decode_init(), ff_vp56_init_context(), ff_wma_init(), imc_decode_init(), ipvideo_decode_init(), lag_decode_init(), main(), mca(), mdec_common_init(), mimic_decode_init(), mlp_decode_init(), mp_decode_init(), mpc7_decode_init(), mpc8_decode_init(), png_enc_init(), svq1_encode_init(), tqi_decode_init(), truespeech_decode_init(), twin_decode_init(), utvideo_encode_init(), vble_decode_init(), vorbis_decode_init(), vp3_decode_init(), and vp8_decode_init().
| av_cold void ff_dsputil_static_init | ( | void | ) |
Definition at line 137 of file dsputil.c.
Referenced by decode_frame_header(), decode_init(), decode_pic(), decode_vop_header(), dnxhd_init_vlc(), encode_init(), ff_dct_common_init(), ff_intrax8_common_init(), ff_mjpeg_decode_init(), ff_msmpeg4_common_init(), ff_vp56_init_context(), ff_wmv2_common_init(), mimic_decode_init(), mpeg_decode_picture_coding_extension(), tgq_decode_init(), tqi_decode_init(), and vp3_decode_init().
Definition at line 158 of file dsputil.c.
Referenced by decode_init(), decode_pic(), ff_dsputil_init(), ff_proresdsp_init(), ff_vp56_init_context(), tgq_decode_init(), tqi_decode_init(), and vp3_decode_init().
| float ff_scalarproduct_float_c | ( | const float * | v1, | |
| const float * | v2, | |||
| int | len | |||
| ) |
Return the scalar product of two vectors.
| v1 | first input vector | |
| v2 | first input vector | |
| len | number of elements |
Definition at line 2548 of file dsputil.c.
Referenced by acelp_decode_gain_codef(), apply_gain_ctrl(), calc_input_response(), convolve(), decode(), decode_frame(), ff_adaptive_gain_control(), ff_amr_set_fixed_gain(), ff_dsputil_init(), ff_scale_vector_to_given_sum_of_squares(), kalman_smoothen(), postfilter(), synth_block_fcb_acb(), and tilt_factor().
| void ff_set_cmp | ( | DSPContext * | c, | |
| me_cmp_func * | cmp, | |||
| int | type | |||
| ) |
Definition at line 1863 of file dsputil.c.
Referenced by encode_init(), ff_dvvideo_init(), ff_init_me(), and ff_MPV_encode_init().
| void ff_wmv2_idct_c | ( | short * | block | ) |
Definition at line 2715 of file dsputil.c.
Referenced by ff_dsputil_init(), ff_wmv2_idct_add_c(), and ff_wmv2_idct_put_c().
| static void gmc1_c | ( | uint8_t * | dst, | |
| uint8_t * | src, | |||
| int | stride, | |||
| int | h, | |||
| int | x16, | |||
| int | y16, | |||
| int | rounder | |||
| ) | [static] |
Definition at line 531 of file dsputil.c.
Referenced by ff_dsputil_init(), and ff_dsputil_init_align().
| static void put_pixels_clamped_c | ( | const DCTELEM * | block, | |
| uint8_t *av_restrict | pixels, | |||
| int | line_size | |||
| ) | [static] |
Definition at line 376 of file dsputil.c.
Referenced by ff_dsputil_init(), ff_jref_idct_put(), and ff_wmv2_idct_put_c().
| static void vector_clip_int32_c | ( | int32_t * | dst, | |
| const int32_t * | src, | |||
| int32_t | min, | |||
| int32_t | max, | |||
| unsigned int | len | |||
| ) | [static] |
| static void vector_clipf_c | ( | float * | dst, | |
| const float * | src, | |||
| float | min, | |||
| float | max, | |||
| int | len | |||
| ) | [static] |
| static void vector_clipf_c_opposite_sign | ( | float * | dst, | |
| const float * | src, | |||
| float * | min, | |||
| float * | max, | |||
| int | len | |||
| ) | [static] |
| static void vector_fmul_add_c | ( | float * | dst, | |
| const float * | src0, | |||
| const float * | src1, | |||
| const float * | src2, | |||
| int | len | |||
| ) | [static] |
| static void vector_fmul_reverse_c | ( | float * | dst, | |
| const float * | src0, | |||
| const float * | src1, | |||
| int | len | |||
| ) | [static] |
| static void vector_fmul_scalar_c | ( | float * | dst, | |
| const float * | src, | |||
| float | mul, | |||
| int | len | |||
| ) | [static] |
| static void vector_fmul_window_c | ( | float * | dst, | |
| const float * | src0, | |||
| const float * | src1, | |||
| const float * | win, | |||
| int | len | |||
| ) | [static] |
| static void wmv2_idct_col | ( | short * | b | ) | [static] |
| static void wmv2_idct_row | ( | short * | b | ) | [static] |
| static void wmv2_mspel8_h_lowpass | ( | uint8_t * | dst, | |
| uint8_t * | src, | |||
| int | dstStride, | |||
| int | srcStride, | |||
| int | h | |||
| ) | [static] |
Definition at line 1303 of file dsputil.c.
Referenced by put_mspel8_mc10_c(), put_mspel8_mc10_sh4(), put_mspel8_mc12_c(), put_mspel8_mc12_sh4(), put_mspel8_mc20_c(), put_mspel8_mc20_sh4(), put_mspel8_mc22_c(), put_mspel8_mc22_sh4(), put_mspel8_mc30_c(), put_mspel8_mc30_sh4(), put_mspel8_mc32_c(), and put_mspel8_mc32_sh4().
| static void wmv2_mspel8_v_lowpass | ( | uint8_t * | dst, | |
| uint8_t * | src, | |||
| int | dstStride, | |||
| int | srcStride, | |||
| int | w | |||
| ) | [static] |
Definition at line 1381 of file dsputil.c.
Referenced by put_mspel8_mc02_c(), put_mspel8_mc02_sh4(), put_mspel8_mc12_c(), put_mspel8_mc12_sh4(), put_mspel8_mc22_c(), put_mspel8_mc22_sh4(), put_mspel8_mc32_c(), and put_mspel8_mc32_sh4().
| const uint8_t ff_alternate_horizontal_scan[64] |
Initial value:
{
0, 1, 2, 3, 8, 9, 16, 17,
10, 11, 4, 5, 6, 7, 15, 14,
13, 12, 19, 18, 24, 25, 32, 33,
26, 27, 20, 21, 22, 23, 28, 29,
30, 31, 34, 35, 40, 41, 48, 49,
42, 43, 36, 37, 38, 39, 44, 45,
46, 47, 50, 51, 56, 57, 58, 59,
52, 53, 54, 55, 60, 61, 62, 63,
}
Definition at line 101 of file dsputil.c.
Referenced by decode_vop_header(), and ff_dct_common_init().
| const uint8_t ff_alternate_vertical_scan[64] |
Initial value:
{
0, 8, 16, 24, 1, 9, 2, 10,
17, 25, 32, 40, 48, 56, 57, 49,
41, 33, 26, 18, 3, 11, 4, 12,
19, 27, 34, 42, 50, 58, 35, 43,
51, 59, 20, 28, 5, 13, 6, 14,
21, 29, 36, 44, 52, 60, 37, 45,
53, 61, 22, 30, 7, 15, 23, 31,
38, 46, 54, 62, 39, 47, 55, 63,
}
Definition at line 112 of file dsputil.c.
Referenced by decode_vop_header(), ff_dct_common_init(), and mpeg_decode_picture_coding_extension().
| uint8_t ff_cropTbl[256+2 *MAX_NEG_CROP] = {0, } |
| uint16_t ff_inv_zigzag_direct16[64] |
Definition at line 99 of file dsputil.c.
Referenced by dct_quantize_TMPL(), and ff_dsputil_static_init().
| uint32_t ff_squareTbl[512] = {0, } |
Definition at line 43 of file dsputil.c.
Referenced by ff_dsputil_static_init(), pix_norm1(), pix_norm1_c(), sse(), sse16_c(), sse4_c(), and sse8_c().
| const uint8_t ff_zigzag248_direct[64] |
Initial value:
{
0, 8, 1, 9, 16, 24, 2, 10,
17, 25, 32, 40, 48, 56, 33, 41,
18, 26, 3, 11, 4, 12, 19, 27,
34, 42, 49, 57, 50, 58, 35, 43,
20, 28, 5, 13, 6, 14, 21, 29,
36, 44, 51, 59, 52, 60, 37, 45,
22, 30, 7, 15, 23, 31, 38, 46,
53, 61, 54, 62, 39, 47, 55, 63,
}
Definition at line 87 of file dsputil.c.
Referenced by dv_init_enc_block(), and ff_dvvideo_init().
| const uint8_t ff_zigzag_direct[64] |
Initial value:
{
0, 1, 8, 16, 9, 2, 3, 10,
17, 24, 32, 25, 18, 11, 4, 5,
12, 19, 26, 33, 40, 48, 41, 34,
27, 20, 13, 6, 7, 14, 21, 28,
35, 42, 49, 56, 57, 50, 43, 36,
29, 22, 15, 23, 30, 37, 44, 51,
58, 59, 52, 45, 38, 31, 39, 46,
53, 60, 61, 54, 47, 55, 62, 63
}
Definition at line 74 of file dsputil.c.
Referenced by decode_dct(), decode_gop_header(), decode_i_block(), decode_init(), decode_pic(), decode_scaling_list(), decode_vol_header(), decode_vop_header(), dnxhd_init_qmat(), dnxhd_init_vlc(), dv_init_enc_block(), encode_picture(), ff_dct_common_init(), ff_dsputil_static_init(), ff_dvvideo_init(), ff_mjpeg_decode_init(), ff_rtjpeg_decode_init(), ff_vp56_init_context(), ff_write_quant_matrix(), fill_quantization_matrices(), fill_scaling_lists(), init_scan_tables(), load_matrix(), mpeg_decode_picture_coding_extension(), mss4_decode_dct(), tgq_decode_init(), tqi_decode_init(), vaapi_mpeg2_start_frame(), vaapi_mpeg4_start_frame(), and vp3_decode_init().
const uint8_t idct_sse2_row_perm[8] = {0, 4, 1, 5, 2, 6, 3, 7} [static] |
const uint8_t simple_mmx_permutation[64] [static] |
Initial value:
{
0x00, 0x08, 0x04, 0x09, 0x01, 0x0C, 0x05, 0x0D,
0x10, 0x18, 0x14, 0x19, 0x11, 0x1C, 0x15, 0x1D,
0x20, 0x28, 0x24, 0x29, 0x21, 0x2C, 0x25, 0x2D,
0x12, 0x1A, 0x16, 0x1B, 0x13, 0x1E, 0x17, 0x1F,
0x02, 0x0A, 0x06, 0x0B, 0x03, 0x0E, 0x07, 0x0F,
0x30, 0x38, 0x34, 0x39, 0x31, 0x3C, 0x35, 0x3D,
0x22, 0x2A, 0x26, 0x2B, 0x23, 0x2E, 0x27, 0x2F,
0x32, 0x3A, 0x36, 0x3B, 0x33, 0x3E, 0x37, 0x3F,
}
Definition at line 124 of file dsputil.c.
Referenced by ff_init_scantable_permutation().
1.5.8