62 unsigned high_bit_depth)
66 if (!avctx->
lowres && !high_bit_depth) {
void ff_simple_idct_arm(int16_t *data)
static void j_rev_dct_arm_add(uint8_t *dest, int line_size, int16_t *block)
void(* ff_put_pixels_clamped)(const int16_t *block, uint8_t *pixels, ptrdiff_t line_size)
#define have_armv6(flags)
void ff_idctdsp_init_neon(IDCTDSPContext *c, AVCodecContext *avctx, unsigned high_bit_depth)
Macro definitions for various function/variable attributes.
static void simple_idct_arm_put(uint8_t *dest, int line_size, int16_t *block)
#define have_armv5te(flags)
void(* ff_add_pixels_clamped)(const int16_t *block, uint8_t *pixels, ptrdiff_t line_size)
#define FF_IDCT_SIMPLEARM
#define CODEC_FLAG_BITEXACT
Use only bitexact stuff (except (I)DCT).
int lowres
low resolution decoding, 1-> 1/2 size, 2->1/4 size
static void simple_idct_arm_add(uint8_t *dest, int line_size, int16_t *block)
void(* add_pixels_clamped)(const int16_t *block, uint8_t *pixels, ptrdiff_t line_size)
Libavcodec external API header.
static void j_rev_dct_arm_put(uint8_t *dest, int line_size, int16_t *block)
void ff_j_rev_dct_arm(int16_t *data)
int idct_algo
IDCT algorithm, see FF_IDCT_* below.
void ff_idctdsp_init_armv5te(IDCTDSPContext *c, AVCodecContext *avctx, unsigned high_bit_depth)
void(* idct_add)(uint8_t *dest, int line_size, int16_t *block)
block -> idct -> add dest -> clip to unsigned 8 bit -> dest.
void ff_idctdsp_init_armv6(IDCTDSPContext *c, AVCodecContext *avctx, unsigned high_bit_depth)
void(* idct_put)(uint8_t *dest, int line_size, int16_t *block)
block -> idct -> clip to unsigned 8 bit -> dest.
main external API structure.
av_cold void ff_idctdsp_init_arm(IDCTDSPContext *c, AVCodecContext *avctx, unsigned high_bit_depth)
int av_get_cpu_flags(void)
Return the flags which specify extensions supported by the CPU.
void ff_add_pixels_clamped_arm(const int16_t *block, uint8_t *dest, ptrdiff_t line_size)
enum idct_permutation_type perm_type
void(* idct)(int16_t *block)