Imported Upstream version 6.1
[platform/upstream/ffmpeg.git] / libavcodec / dca_lbr.h
index e6856a2..8ff66af 100644 (file)
 #ifndef AVCODEC_DCA_LBR_H
 #define AVCODEC_DCA_LBR_H
 
-#include "libavutil/common.h"
 #include "libavutil/float_dsp.h"
 #include "libavutil/mem_internal.h"
+#include "libavutil/tx.h"
 
 #include "avcodec.h"
-#include "internal.h"
 #include "get_bits.h"
 #include "dca.h"
 #include "dca_exss.h"
 #include "dcadsp.h"
-#include "fft.h"
 
 #define DCA_LBR_CHANNELS        6
 #define DCA_LBR_CHANNELS_TOTAL  32
@@ -121,14 +119,16 @@ typedef struct DCALbrDecoder {
     DCALbrTone  tones[DCA_LBR_TONES];   ///< Circular buffer of tones
     int         ntones;                 ///< Circular buffer head position
 
-    FFTContext          imdct;
+    AVTXContext         *imdct;
+    av_tx_fn             imdct_fn;
     AVFloatDSPContext   *fdsp;
     DCADSPContext       *dcadsp;
 } DCALbrDecoder;
 
-int ff_dca_lbr_parse(DCALbrDecoder *s, uint8_t *data, DCAExssAsset *asset);
+int ff_dca_lbr_parse(DCALbrDecoder *s, const uint8_t *data, DCAExssAsset *asset);
 int ff_dca_lbr_filter_frame(DCALbrDecoder *s, AVFrame *frame);
 av_cold void ff_dca_lbr_flush(DCALbrDecoder *s);
+av_cold void ff_dca_lbr_init_tables(void);
 av_cold int ff_dca_lbr_init(DCALbrDecoder *s);
 av_cold void ff_dca_lbr_close(DCALbrDecoder *s);