FFmpeg
4.0
|
#include <libavcodec/idctdsp.h>
Data Fields | |
void(* | put_pixels_clamped )(const int16_t *block, uint8_t *av_restrict pixels, ptrdiff_t line_size) |
void(* | put_signed_pixels_clamped )(const int16_t *block, uint8_t *av_restrict pixels, ptrdiff_t line_size) |
void(* | add_pixels_clamped )(const int16_t *block, uint8_t *av_restrict pixels, ptrdiff_t line_size) |
void(* | idct )(int16_t *block) |
void(* | idct_put )(uint8_t *dest, ptrdiff_t line_size, int16_t *block) |
block -> idct -> clip to unsigned 8 bit -> dest. More... | |
void(* | idct_add )(uint8_t *dest, ptrdiff_t line_size, int16_t *block) |
block -> idct -> add dest -> clip to unsigned 8 bit -> dest. More... | |
uint8_t | idct_permutation [64] |
IDCT input permutation. More... | |
enum idct_permutation_type | perm_type |
void(* IDCTDSPContext::put_pixels_clamped) (const int16_t *block, uint8_t *av_restrict pixels, ptrdiff_t line_size) |
Definition at line 55 of file idctdsp.h.
Referenced by decode_mb(), ff_idctdsp_init(), ff_idctdsp_init_alpha(), ff_idctdsp_init_neon(), ff_idctdsp_init_x86(), and vc1_decode_i_blocks().
void(* IDCTDSPContext::put_signed_pixels_clamped) (const int16_t *block, uint8_t *av_restrict pixels, ptrdiff_t line_size) |
Definition at line 58 of file idctdsp.h.
Referenced by aic_decode_slice(), ff_idctdsp_init(), ff_idctdsp_init_neon(), ff_idctdsp_init_x86(), vc1_decode_b_mb(), vc1_decode_b_mb_intfi(), vc1_decode_b_mb_intfr(), vc1_decode_i_blocks(), vc1_decode_p_mb(), vc1_decode_p_mb_intfi(), vc1_decode_p_mb_intfr(), and vc1_put_signed_blocks_clamped().
void(* IDCTDSPContext::add_pixels_clamped) (const int16_t *block, uint8_t *av_restrict pixels, ptrdiff_t line_size) |
Definition at line 61 of file idctdsp.h.
Referenced by ff_idctdsp_init(), ff_idctdsp_init_alpha(), ff_idctdsp_init_arm(), ff_idctdsp_init_armv6(), ff_idctdsp_init_neon(), ff_idctdsp_init_x86(), and vc1_decode_p_block().
Definition at line 65 of file idctdsp.h.
Referenced by aic_decode_slice(), dnxhd_calc_bits_thread(), ff_idctdsp_init(), ff_idctdsp_init_aarch64(), ff_idctdsp_init_alpha(), ff_idctdsp_init_arm(), ff_idctdsp_init_armv5te(), ff_idctdsp_init_armv6(), ff_idctdsp_init_neon(), ff_idctdsp_init_ppc(), ff_idctdsp_init_x86(), ff_wmv2_common_init(), ff_xvid_idct_init(), ff_xvid_idct_init_x86(), ff_xvmc_decode_mb(), and jpg_decode_data().
block -> idct -> clip to unsigned 8 bit -> dest.
(-1392, 0, 0, ...) -> idct -> (-174, -174, ...) -> put -> (0, 0, ...)
line_size | size in bytes of a horizontal line of dest |
Definition at line 72 of file idctdsp.h.
Referenced by decode(), decode_dct_block(), dnxhd_decode_macroblock(), dvvideo_decode_init(), ff_idctdsp_init(), ff_idctdsp_init_aarch64(), ff_idctdsp_init_alpha(), ff_idctdsp_init_arm(), ff_idctdsp_init_armv5te(), ff_idctdsp_init_armv6(), ff_idctdsp_init_neon(), ff_idctdsp_init_ppc(), ff_idctdsp_init_x86(), ff_wmv2_common_init(), ff_xvid_idct_init(), ff_xvid_idct_init_x86(), idct_put(), mjpeg_decode_scan(), mjpeg_idct_scan_progressive_ac(), mpv_reconstruct_mb_internal(), and put_dct().
block -> idct -> add dest -> clip to unsigned 8 bit -> dest.
line_size | size in bytes of a horizontal line of dest |
Definition at line 79 of file idctdsp.h.
Referenced by add_dct(), add_dequant_dct(), ff_idctdsp_init(), ff_idctdsp_init_aarch64(), ff_idctdsp_init_alpha(), ff_idctdsp_init_arm(), ff_idctdsp_init_armv5te(), ff_idctdsp_init_armv6(), ff_idctdsp_init_neon(), ff_idctdsp_init_ppc(), ff_idctdsp_init_x86(), ff_wmv2_common_init(), ff_xvid_idct_init(), ff_xvid_idct_init_x86(), and rd8x8_c().
uint8_t IDCTDSPContext::idct_permutation[64] |
IDCT input permutation.
Several optimized IDCTs need a permutated input (relative to the normal order of the reference IDCT). This permutation must be performed before the idct_put/add. Note, normally this can be merged with the zigzag/alternate scan
An example to avoid confusion:
Definition at line 96 of file idctdsp.h.
Referenced by aic_decode_init(), dct_quantize_refine(), dct_quantize_trellis_c(), decide_ac_pred(), decode_init(), decode_studio_vop_header(), decode_vol_header(), decode_vop_header(), dnxhd_10bit_dct_quantize(), dnxhd_10bit_dct_quantize_444(), dnxhd_decode_header(), dnxhd_init_qmat(), dvvideo_decode_init(), encode_picture(), ff_cavs_init(), ff_convert_matrix(), ff_dct_quantize_c(), ff_h263_pred_acdc(), ff_idctdsp_init(), ff_mpeg4_pred_ac(), ff_mpv_encode_init(), ff_mpv_idct_init(), ff_msmpeg4_common_init(), ff_rtjpeg_decode_init(), ff_rtjpeg_init(), ff_wmv2_common_init(), ff_xvid_idct_init(), fill_quantization_matrices(), init_idct(), jpg_init(), ljpeg_encode_init(), load_matrix(), mimic_decode_init(), mpeg1_decode_sequence(), mpeg4_load_default_matrices(), mpeg_decode_picture_coding_extension(), mpeg_decode_postinit(), mpv_reconstruct_mb_internal(), read_quant_matrix_ext(), restore_ac_coeffs(), speedhq_decode_init(), tqi_decode_init(), vaapi_mpeg2_start_frame(), vaapi_mpeg4_start_frame(), and vcr2_init_sequence().
enum idct_permutation_type IDCTDSPContext::perm_type |
Definition at line 97 of file idctdsp.h.
Referenced by dnxhd_10bit_dct_quantize(), dnxhd_10bit_dct_quantize_444(), ff_dct_quantize_c(), ff_idctdsp_init(), ff_idctdsp_init_aarch64(), ff_idctdsp_init_arm(), ff_idctdsp_init_armv5te(), ff_idctdsp_init_armv6(), ff_idctdsp_init_neon(), ff_idctdsp_init_ppc(), ff_idctdsp_init_x86(), ff_wmv2_common_init(), ff_xvid_idct_init(), and ff_xvid_idct_init_x86().