00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef AVCODEC_AC3DSP_H
00023 #define AVCODEC_AC3DSP_H
00024
00025 #include <stdint.h>
00026
00027 typedef struct AC3DSPContext {
00037 void (*ac3_exponent_min)(uint8_t *exp, int num_reuse_blocks, int nb_coefs);
00038
00048 int (*ac3_max_msb_abs_int16)(const int16_t *src, int len);
00049
00059 void (*ac3_lshift_int16)(int16_t *src, unsigned int len, unsigned int shift);
00060
00070 void (*ac3_rshift_int32)(int32_t *src, unsigned int len, unsigned int shift);
00071
00083 void (*float_to_fixed24)(int32_t *dst, const float *src, unsigned int len);
00084 } AC3DSPContext;
00085
00086 void ff_ac3dsp_init (AC3DSPContext *c, int bit_exact);
00087 void ff_ac3dsp_init_x86(AC3DSPContext *c, int bit_exact);
00088
00089 #endif