summaryrefslogtreecommitdiff
path: root/libavcodec/imc.c
diff options
context:
space:
mode:
authorRonald S. Bultje <rsbultje@gmail.com>2013-01-20 15:41:14 -0800
committerRonald S. Bultje <rsbultje@gmail.com>2013-01-22 11:55:42 -0800
commit5959bfaca396ecaf63a8123055f499688b79cae3 (patch)
treea32f22fb1a5ad7ddc731e9cee13ffface840cb4a /libavcodec/imc.c
parent42d324694883cdf1fff1612ac70fa403692a1ad4 (diff)
floatdsp: move butterflies_float from dsputil to avfloatdsp.
This makes wmadec/enc, twinvq and mpegaudiodec (i.e. mp2/mp3) independent of dsputil.
Diffstat (limited to 'libavcodec/imc.c')
-rw-r--r--libavcodec/imc.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/libavcodec/imc.c b/libavcodec/imc.c
index 5cff70fcb4..6dac430284 100644
--- a/libavcodec/imc.c
+++ b/libavcodec/imc.c
@@ -36,6 +36,7 @@
#include <stdio.h>
#include "libavutil/channel_layout.h"
+#include "libavutil/float_dsp.h"
#include "avcodec.h"
#include "get_bits.h"
#include "dsputil.h"
@@ -95,6 +96,7 @@ typedef struct {
GetBitContext gb;
DSPContext dsp;
+ AVFloatDSPContext fdsp;
FFTContext fft;
DECLARE_ALIGNED(32, FFTComplex, samples)[COEFFS / 2];
float *out_samples;
@@ -244,6 +246,7 @@ static av_cold int imc_decode_init(AVCodecContext *avctx)
return ret;
}
ff_dsputil_init(&q->dsp, avctx);
+ avpriv_float_dsp_init(&q->fdsp, avctx->flags & CODEC_FLAG_BITEXACT);
avctx->sample_fmt = AV_SAMPLE_FMT_FLTP;
avctx->channel_layout = avctx->channels == 1 ? AV_CH_LAYOUT_MONO
: AV_CH_LAYOUT_STEREO;
@@ -959,8 +962,8 @@ static int imc_decode_frame(AVCodecContext *avctx, void *data,
}
if (avctx->channels == 2) {
- q->dsp.butterflies_float((float *)q->frame.extended_data[0],
- (float *)q->frame.extended_data[1], COEFFS);
+ q->fdsp.butterflies_float((float *)q->frame.extended_data[0],
+ (float *)q->frame.extended_data[1], COEFFS);
}
*got_frame_ptr = 1;