#include "avcodec.h"Go to the source code of this file.
Data Structures | |
| struct | ScanTable |
| struct | DSPContext |
| struct | FFTComplex |
| struct | FFTContext |
| struct | MDCTContext |
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() |
| #define | DECLARE_ALIGNED_16(t, v) DECLARE_ALIGNED(16, t, v) |
| #define | mm_flags 0 |
| #define | mm_support() 0 |
| #define | DECLARE_ALIGNED_8(t, v) DECLARE_ALIGNED(8, t, v) |
| #define | STRIDE_ALIGN 8 |
| #define | WRAPPER8_16(name8, name16) |
| #define | WRAPPER8_16_SQ(name8, name16) |
Typedefs | |
| typedef short | DCTELEM |
| typedef int | DWTELEM |
| typedef short | IDWTELEM |
| 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(*) | h264_weight_func (uint8_t *block, int stride, int log2_denom, int weight, int offset) |
| typedef void(*) | h264_biweight_func (uint8_t *dst, uint8_t *src, int stride, int log2_denom, int weightd, int weights, int offset) |
| typedef int(*) | me_cmp_func (void *s, uint8_t *blk1, uint8_t *blk2, int line_size, int h) |
| typedef slice_buffer_s | slice_buffer |
| typedef float | FFTSample |
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_vector_fmul_add_add_c (float *dst, const float *src0, const float *src1, const float *src2, int src3, int blocksize, int step) |
| 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_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_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) |
| 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) |
| 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) |
| void | dsputil_init_alpha (DSPContext *c, AVCodecContext *avctx) |
| void | dsputil_init_armv4l (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 | get_psnr (uint8_t *orig_image[3], uint8_t *coded_image[3], int orig_linesize[3], int coded_linesize, AVCodecContext *avctx) |
| int | ff_fft_init (FFTContext *s, int nbits, int inverse) |
| void | ff_fft_permute (FFTContext *s, FFTComplex *z) |
| void | ff_fft_calc_c (FFTContext *s, FFTComplex *z) |
| void | ff_fft_calc_sse (FFTContext *s, FFTComplex *z) |
| void | ff_fft_calc_3dn (FFTContext *s, FFTComplex *z) |
| void | ff_fft_calc_3dn2 (FFTContext *s, FFTComplex *z) |
| void | ff_fft_calc_altivec (FFTContext *s, FFTComplex *z) |
| static void | ff_fft_calc (FFTContext *s, FFTComplex *z) |
| void | ff_fft_end (FFTContext *s) |
| void | ff_kbd_window_init (float *window, float alpha, int n) |
| void | ff_sine_window_init (float *window, int n) |
| int | ff_mdct_init (MDCTContext *s, int nbits, int inverse) |
| void | ff_imdct_calc (MDCTContext *s, FFTSample *output, const FFTSample *input, FFTSample *tmp) |
| void | ff_imdct_half (MDCTContext *s, FFTSample *output, const FFTSample *input, FFTSample *tmp) |
| void | ff_imdct_calc_3dn2 (MDCTContext *s, FFTSample *output, const FFTSample *input, FFTSample *tmp) |
| void | ff_imdct_half_3dn2 (MDCTContext *s, FFTSample *output, const FFTSample *input, FFTSample *tmp) |
| void | ff_imdct_calc_sse (MDCTContext *s, FFTSample *output, const FFTSample *input, FFTSample *tmp) |
| void | ff_imdct_half_sse (MDCTContext *s, FFTSample *output, const FFTSample *input, FFTSample *tmp) |
| void | ff_mdct_calc (MDCTContext *s, FFTSample *out, const FFTSample *input, FFTSample *tmp) |
| void | ff_mdct_end (MDCTContext *s) |
| static void | copy_block2 (uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h) |
| static void | copy_block4 (uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h) |
| static void | copy_block8 (uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h) |
| static void | copy_block9 (uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h) |
| static void | copy_block16 (uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h) |
| static void | copy_block17 (uint8_t *dst, 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] |
Definition in file dsputil.h.
| #define BASIS_SHIFT 16 |
Definition at line 420 of file dsputil.h.
Referenced by add_8x8basis(), add_8x8basis_c(), build_basis(), try_8x8basis(), and try_8x8basis_c().
| #define CALL_2X_PIXELS | ( | a, | |||
| b, | |||||
| n | ) |
Definition at line 548 of file dsputil.h.
Referenced by dct_quantize(), dct_quantize_refine(), dct_sad8x8_c(), dct_unquantize_h263_altivec(), dnxhd_calc_bits_thread(), do_imdct_256(), dv_decode_video_segment(), dv_encode_video_segment(), ff_check_alignment(), ff_snow_horizontal_compose97i_altivec(), ff_snow_horizontal_compose97i_sse2(), gmc1_altivec(), inner_add_yblock_a_bw_16_obmc_32_altivec(), inner_add_yblock_a_bw_8_obmc_16_altivec(), inner_add_yblock_bw_16_obmc_32_altivec(), inner_add_yblock_bw_8_obmc_16_altivec(), MSPEL_FILTER13_8B(), pix_norm1_altivec(), pix_sum_altivec(), PREFIX_h264_chroma_mc8_altivec(), put_no_rnd_h264_chroma_mc8_altivec(), render_slice(), rtjpeg_decode_frame_yuv420(), sad16_altivec(), sad16_x2_altivec(), sad16_xy2_altivec(), sad16_y2_altivec(), sad8_altivec(), scalarproduct_int16_altivec(), scalarproduct_int16_sse2(), sse16_altivec(), sse8_altivec(), and write16x4().
Definition at line 611 of file dsputil.h.
Referenced by bit8x8_c(), cavs_idct8_add_mmx(), dct_max8x8_c(), dv_decode_video_segment(), ff_cavs_filter(), ff_h264_idct8_add_mmx(), ff_simple_idct_vis(), filter_mb_fast(), H264_CHROMA_MC8_TMPL(), h264_h_loop_filter_chroma_intra_mmx2(), h264_h_loop_filter_chroma_mmx2(), h264_h_loop_filter_luma_mmx2(), h264_loop_filter_luma_mmx2(), h264_loop_filter_strength_mmx2(), quant_psnr8x8_c(), and rd8x8_c().
| #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);
| #define EDGE_WIDTH 16 |
Definition at line 424 of file dsputil.h.
Referenced by avcodec_default_get_buffer(), frame_start(), halfpel_interpol(), and MPV_frame_end().
| #define emms_c | ( | ) |
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 532 of file dsputil.h.
Referenced by avcodec_decode_video(), avcodec_encode_video(), avpicture_deinterlace(), build_basis(), decode_chunks(), decode_frame(), ff_draw_horiz_band(), ff_faandct(), ff_faandct248(), ff_faanidct(), ff_faanidct_add(), ff_faanidct_put(), ff_rate_control_init(), ff_rate_control_uninit(), ff_rate_estimate_qscale(), MPV_frame_end(), slice_decode_thread(), and test_motion().
| #define FF_LIBMPEG2_IDCT_PERM 2 |
Definition at line 412 of file dsputil.h.
Referenced by dct_quantize(), dsputil_init(), dsputil_init_armv4l(), dsputil_init_mmi(), and dsputil_init_mmx().
| #define FF_NO_IDCT_PERM 1 |
Definition at line 411 of file dsputil.h.
Referenced by dct_quantize_altivec(), dct_quantize_bfin(), dct_quantize_c(), dsputil_init(), dsputil_init_armv4l(), dsputil_init_bfin(), dsputil_init_sh4(), and MPV_common_init_mlib().
| #define FF_PARTTRANS_IDCT_PERM 5 |
| #define FF_SIMPLE_IDCT_PERM 3 |
Definition at line 413 of file dsputil.h.
Referenced by dct_quantize(), dsputil_init(), and dsputil_init_mmx().
| #define FF_SSE2_IDCT_PERM 6 |
| #define FF_TRANSPOSE_IDCT_PERM 4 |
Definition at line 414 of file dsputil.h.
Referenced by dct_quantize_altivec(), dsputil_init(), dsputil_init_mmx(), dsputil_init_ppc(), dsputil_init_vis(), and MPV_common_init_altivec().
| #define MAX_NEG_CROP 1024 |
Definition at line 77 of file dsputil.h.
Referenced by add_pixels_clamped2_c(), add_pixels_clamped4_c(), add_pixels_clamped_c(), cavs_idct8_add_c(), deinterlace_line(), deinterlace_line_inplace(), dsputil_static_init(), ff_bfin_vp3_idct_put(), ff_h264_idct8_add_c(), ff_h264_idct8_dc_add_c(), ff_h264_idct_dc_add_c(), ff_idct_put_mlib(), ff_jref_idct1_add(), ff_jref_idct1_put(), h_block_filter(), idct(), idct4col_add(), idct4col_put(), idct_add(), idct_internal(), idct_put(), idctSparseColAdd(), idctSparseColPut(), img_convert_init(), intra_pred_plane(), main(), mp_yuv_to_rgb(), pred16x16_plane_compat_c(), pred8x8_plane_c(), Process(), put_pixels_clamped2_c(), put_pixels_clamped4_c(), put_pixels_clamped_c(), svq3_add_idct_c(), v_block_filter(), vc1_inv_trans_4x4_c(), vc1_inv_trans_4x8_c(), vc1_inv_trans_8x4_c(), wmv2_mspel8_h_lowpass(), wmv2_mspel8_v_lowpass(), and yuv_a_to_rgba().
| #define mm_flags 0 |
Definition at line 605 of file dsputil.h.
Referenced by component_resample(), dsputil_init_iwmmxt(), dsputil_init_mmx(), dsputil_init_pix_mmx(), dsputil_init_ppc(), dsputilenc_init_mmx(), ff_h263_decode_frame(), h_resample(), MPV_common_init_altivec(), MPV_common_init_iwmmxt(), and MPV_common_init_mmx().
| int mm_support | ( | void | ) | 0 |
Definition at line 606 of file dsputil.h.
Referenced by dsputil_init_mmx(), ff_fft_init(), and main().
| #define RECON_SHIFT 6 |
Definition at line 421 of file dsputil.h.
Referenced by add_8x8basis(), add_8x8basis_c(), dct_quantize_refine(), try_8x8basis(), and try_8x8basis_c().
| #define STRIDE_ALIGN 8 |
Definition at line 615 of file dsputil.h.
Referenced by avcodec_default_get_buffer(), and fill_rectangle().
| #define WRAPPER8_16 | ( | name8, | |||
| name16 | ) |
| #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;\ }
| typedef void(*) h264_biweight_func(uint8_t *dst, uint8_t *src, int stride, int log2_denom, int weightd, int weights, int offset) |
| typedef void(*) h264_chroma_mc_func(uint8_t *dst, uint8_t *src, int srcStride, int h, int x, int y) |
| typedef void(*) h264_weight_func(uint8_t *block, int stride, int log2_denom, int weight, int offset) |
| typedef int(*) me_cmp_func(void *s, uint8_t *blk1, uint8_t *blk2, int line_size, int h) |
| typedef void(*) op_pixels_func(uint8_t *block, const uint8_t *pixels, int line_size, int h) |
| typedef void(*) qpel_mc_func(uint8_t *dst, uint8_t *src, int stride) |
| typedef struct slice_buffer_s slice_buffer |
| typedef void(*) tpel_mc_func(uint8_t *block, const uint8_t *pixels, int line_size, int w, int h) |
| static void copy_block16 | ( | uint8_t * | dst, | |
| uint8_t * | src, | |||
| int | dstStride, | |||
| int | srcStride, | |||
| int | h | |||
| ) | [inline, static] |
Definition at line 773 of file dsputil.h.
References AV_RN32, and AV_WN32.
00774 { 00775 int i; 00776 for(i=0; i<h; i++) 00777 { 00778 AV_WN32(dst , AV_RN32(src )); 00779 AV_WN32(dst+4 , AV_RN32(src+4 )); 00780 AV_WN32(dst+8 , AV_RN32(src+8 )); 00781 AV_WN32(dst+12, AV_RN32(src+12)); 00782 dst+=dstStride; 00783 src+=srcStride; 00784 } 00785 }
| static void copy_block17 | ( | uint8_t * | dst, | |
| uint8_t * | src, | |||
| int | dstStride, | |||
| int | srcStride, | |||
| int | h | |||
| ) | [inline, static] |
Definition at line 787 of file dsputil.h.
References AV_RN32, and AV_WN32.
00788 { 00789 int i; 00790 for(i=0; i<h; i++) 00791 { 00792 AV_WN32(dst , AV_RN32(src )); 00793 AV_WN32(dst+4 , AV_RN32(src+4 )); 00794 AV_WN32(dst+8 , AV_RN32(src+8 )); 00795 AV_WN32(dst+12, AV_RN32(src+12)); 00796 dst[16]= src[16]; 00797 dst+=dstStride; 00798 src+=srcStride; 00799 } 00800 }
| static void copy_block2 | ( | uint8_t * | dst, | |
| uint8_t * | src, | |||
| int | dstStride, | |||
| int | srcStride, | |||
| int | h | |||
| ) | [inline, static] |
| static void copy_block4 | ( | uint8_t * | dst, | |
| uint8_t * | src, | |||
| int | dstStride, | |||
| int | srcStride, | |||
| int | h | |||
| ) | [inline, static] |
| static void copy_block8 | ( | uint8_t * | dst, | |
| uint8_t * | src, | |||
| int | dstStride, | |||
| int | srcStride, | |||
| int | h | |||
| ) | [inline, static] |
| static void copy_block9 | ( | uint8_t * | dst, | |
| uint8_t * | src, | |||
| int | dstStride, | |||
| int | srcStride, | |||
| int | h | |||
| ) | [inline, static] |
| void dsputil_init | ( | DSPContext * | p, | |
| AVCodecContext * | avctx | |||
| ) |
Definition at line 4171 of file dsputil.c.
References add_8x8basis_c(), add_bytes_c(), add_bytes_l2_c(), add_int16_c(), add_pixels4_c(), add_pixels8_c(), add_pixels_clamped_c(), av_log(), AV_LOG_ERROR, avg, avg_tpel_pixels_mc00_c(), avg_tpel_pixels_mc01_c(), avg_tpel_pixels_mc02_c(), avg_tpel_pixels_mc10_c(), avg_tpel_pixels_mc11_c(), avg_tpel_pixels_mc12_c(), avg_tpel_pixels_mc20_c(), avg_tpel_pixels_mc21_c(), avg_tpel_pixels_mc22_c(), bswap_buf(), c, clear_blocks_c(), AVCodecContext::dct_algo, diff_bytes_c(), diff_pixels_c(), draw_edges_c(), dspfunc, dsputil_init_alpha(), dsputil_init_armv4l(), dsputil_init_bfin(), dsputil_init_mlib(), dsputil_init_mmi(), dsputil_init_mmx(), dsputil_init_ppc(), dsputil_init_sh4(), dsputil_init_vis(), ENABLE_ANY_H263, fdct_ifast(), fdct_ifast248(), ff_add_png_paeth_prediction(), ff_cavsdsp_init(), ff_check_alignment(), FF_DCT_FAAN, FF_DCT_FASTINT, ff_faandct(), ff_faandct248(), ff_faanidct(), ff_faanidct_add(), ff_faanidct_put(), ff_fdct248_islow(), ff_flac_compute_autocorr(), ff_float_to_int16_c(), ff_float_to_int16_interleave_c(), ff_gmc_c(), ff_h264_idct8_add_c(), ff_h264_idct8_dc_add_c(), ff_h264_idct_add_c(), ff_h264_idct_dc_add_c(), ff_h264_lowres_idct_add_c(), ff_h264_lowres_idct_put_c(), ff_h264dspenc_init(), FF_IDCT_AUTO, FF_IDCT_FAAN, FF_IDCT_INT, FF_IDCT_VP3, FF_IDCT_WMV2, ff_img_copy_plane(), ff_intrax8dsp_init(), ff_jpeg_fdct_islow(), ff_jref_idct1_add(), ff_jref_idct1_put(), ff_jref_idct2_add(), ff_jref_idct2_put(), ff_jref_idct4_add(), ff_jref_idct4_put(), ff_jref_idct_add(), ff_jref_idct_put(), FF_LIBMPEG2_IDCT_PERM, FF_NO_IDCT_PERM, FF_PARTTRANS_IDCT_PERM, ff_shrink22(), ff_shrink44(), ff_shrink88(), ff_simple_idct(), ff_simple_idct_add(), FF_SIMPLE_IDCT_PERM, ff_simple_idct_put(), ff_snow_horizontal_compose97i(), ff_snow_inner_add_yblock(), ff_snow_vertical_compose97i(), FF_SSE2_IDCT_PERM, FF_TRANSPOSE_IDCT_PERM, ff_vc1dsp_init(), ff_vector_fmul_add_add_c(), ff_vector_fmul_window_c(), ff_vp3_idct_add_c(), ff_vp3_idct_c(), ff_vp3_idct_put_c(), ff_wmv2_idct_add_c(), ff_wmv2_idct_c(), ff_wmv2_idct_put_c(), get_pixels_c(), gmc1_c(), h261_loop_filter_c(), h263_h_loop_filter_c(), h263_v_loop_filter_c(), h264_h_loop_filter_chroma_c(), h264_h_loop_filter_chroma_intra_c(), h264_h_loop_filter_luma_c(), h264_v_loop_filter_chroma_c(), h264_v_loop_filter_chroma_intra_c(), h264_v_loop_filter_luma_c(), AVCodecContext::idct_algo, idct_sse2_row_perm, j_rev_dct(), j_rev_dct1(), j_rev_dct2(), j_rev_dct4(), just_return(), AVCodecContext::lowres, nsse16_c(), nsse8_c(), NULL, pix_abs16_c(), pix_abs16_x2_c(), pix_abs16_xy2_c(), pix_abs16_y2_c(), pix_abs8_c(), pix_abs8_x2_c(), pix_abs8_xy2_c(), pix_abs8_y2_c(), pix_norm1_c(), pix_sum_c(), put_mspel8_mc00_c(), put_mspel8_mc02_c(), put_mspel8_mc10_c(), put_mspel8_mc12_c(), put_mspel8_mc20_c(), put_mspel8_mc22_c(), put_mspel8_mc30_c(), put_mspel8_mc32_c(), put_no_rnd_h264_chroma_mc8_c(), put_no_rnd_pixels16_l2_c(), put_no_rnd_pixels8_l2_c(), put_pixels_clamped_c(), put_signed_pixels_clamped_c(), put_tpel_pixels_mc00_c(), put_tpel_pixels_mc01_c(), put_tpel_pixels_mc02_c(), put_tpel_pixels_mc10_c(), put_tpel_pixels_mc11_c(), put_tpel_pixels_mc12_c(), put_tpel_pixels_mc20_c(), put_tpel_pixels_mc21_c(), put_tpel_pixels_mc22_c(), scalarproduct_int16_c(), SET_CMP_FUNC, simple_mmx_permutation, ssd_int8_vs_int16_c(), sse16_c(), sse4_c(), sse8_c(), sub_hfyu_median_prediction_c(), sub_int16_c(), sum_abs_dctelem_c(), try_8x8basis_c(), vector_fmul_c(), vector_fmul_reverse_c(), vorbis_inverse_coupling(), vsad16_c(), vsad_intra16_c(), vsse16_c(), and vsse_intra16_c().
Referenced by ac3_decode_init(), ape_decode_init(), atrac3_decode_init(), common_init(), dca_decode_init(), decode_init(), dnxhd_decode_init(), dnxhd_encode_init(), ff_mjpeg_decode_init(), ff_wma_init(), flac_encode_init(), imc_decode_init(), ipvideo_decode_init(), main(), mdec_common_init(), mimic_decode_init(), mp_decode_init(), mpc7_decode_init(), mpc8_decode_init(), MPV_common_init(), png_dec_init(), png_enc_init(), svq1_encode_init(), vorbis_decode_init(), vp3_decode_init(), and vp56_init().
04172 { 04173 int i; 04174 04175 ff_check_alignment(); 04176 04177 #ifdef CONFIG_ENCODERS 04178 if(avctx->dct_algo==FF_DCT_FASTINT) { 04179 c->fdct = fdct_ifast; 04180 c->fdct248 = fdct_ifast248; 04181 } 04182 else if(avctx->dct_algo==FF_DCT_FAAN) { 04183 c->fdct = ff_faandct; 04184 c->fdct248 = ff_faandct248; 04185 } 04186 else { 04187 c->fdct = ff_jpeg_fdct_islow; //slow/accurate/default 04188 c->fdct248 = ff_fdct248_islow; 04189 } 04190 #endif //CONFIG_ENCODERS 04191 04192 if(avctx->lowres==1){ 04193 if(avctx->idct_algo==FF_IDCT_INT || avctx->idct_algo==FF_IDCT_AUTO || !ENABLE_H264_DECODER){ 04194 c->idct_put= ff_jref_idct4_put; 04195 c->idct_add= ff_jref_idct4_add; 04196 }else{ 04197 c->idct_put= ff_h264_lowres_idct_put_c; 04198 c->idct_add= ff_h264_lowres_idct_add_c; 04199 } 04200 c->idct = j_rev_dct4; 04201 c->idct_permutation_type= FF_NO_IDCT_PERM; 04202 }else if(avctx->lowres==2){ 04203 c->idct_put= ff_jref_idct2_put; 04204 c->idct_add= ff_jref_idct2_add; 04205 c->idct = j_rev_dct2; 04206 c->idct_permutation_type= FF_NO_IDCT_PERM; 04207 }else if(avctx->lowres==3){ 04208 c->idct_put= ff_jref_idct1_put; 04209 c->idct_add= ff_jref_idct1_add; 04210 c->idct = j_rev_dct1; 04211 c->idct_permutation_type= FF_NO_IDCT_PERM; 04212 }else{ 04213 if(avctx->idct_algo==FF_IDCT_INT){ 04214 c->idct_put= ff_jref_idct_put; 04215 c->idct_add= ff_jref_idct_add; 04216 c->idct = j_rev_dct; 04217 c->idct_permutation_type= FF_LIBMPEG2_IDCT_PERM; 04218 }else if((ENABLE_VP3_DECODER || ENABLE_VP5_DECODER || ENABLE_VP6_DECODER || ENABLE_THEORA_DECODER ) && 04219 avctx->idct_algo==FF_IDCT_VP3){ 04220 c->idct_put= ff_vp3_idct_put_c; 04221 c->idct_add= ff_vp3_idct_add_c; 04222 c->idct = ff_vp3_idct_c; 04223 c->idct_permutation_type= FF_NO_IDCT_PERM; 04224 }else if(avctx->idct_algo==FF_IDCT_WMV2){ 04225 c->idct_put= ff_wmv2_idct_put_c; 04226 c->idct_add= ff_wmv2_idct_add_c; 04227 c->idct = ff_wmv2_idct_c; 04228 c->idct_permutation_type= FF_NO_IDCT_PERM; 04229 }else if(avctx->idct_algo==FF_IDCT_FAAN){ 04230