X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fdcadsp.h;h=0669128cbccbddf2077e882829ad8858db11f58a;hb=c33c1fa8af2b2e82418a06901b6ad17b3d61b73e;hp=ec88be71f06edb764951be6332b2fe05629bcdbc;hpb=800ffab48a7844dd5dc0a33b8f6b8e5ed718cf2e;p=ffmpeg diff --git a/libavcodec/dcadsp.h b/libavcodec/dcadsp.h index ec88be71f06..0669128cbcc 100644 --- a/libavcodec/dcadsp.h +++ b/libavcodec/dcadsp.h @@ -22,18 +22,26 @@ #include "avfft.h" #include "synth_filter.h" +#define DCA_SUBBANDS 32 + typedef struct DCADSPContext { - void (*lfe_fir)(float *out, const float *in, const float *coefs, - int decifactor, float scale); + void (*lfe_fir[2])(float *out, const float *in, const float *coefs); void (*qmf_32_subbands)(float samples_in[32][8], int sb_act, SynthFilterContext *synth, FFTContext *imdct, float synth_buf_ptr[512], int *synth_buf_offset, float synth_buf2[32], const float window[512], float *samples_out, float raXin[32], float scale); + void (*decode_hf)(float dst[DCA_SUBBANDS][8], + const int32_t vq_num[DCA_SUBBANDS], + const int8_t hf_vq[1024][32], intptr_t vq_offset, + int32_t scale[DCA_SUBBANDS][2], + intptr_t start, intptr_t end); } DCADSPContext; void ff_dcadsp_init(DCADSPContext *s); +void ff_dcadsp_init_aarch64(DCADSPContext *s); void ff_dcadsp_init_arm(DCADSPContext *s); +void ff_dcadsp_init_x86(DCADSPContext *s); #endif /* AVCODEC_DCADSP_H */