summaryrefslogtreecommitdiff
path: root/libavcodec/opus_celt.c
diff options
context:
space:
mode:
authorRostislav Pehlivanov <atomnuker@gmail.com>2017-02-01 03:13:06 +0000
committerRostislav Pehlivanov <atomnuker@gmail.com>2017-02-14 06:15:36 +0000
commitd2119f624d392f53f80c3d36ffaadca23aef8a10 (patch)
treec867ecd8f2b9f4bf7aafba9198da92f78697993b /libavcodec/opus_celt.c
parent373ee2c61871369c05efb1f7db5b723924a4b840 (diff)
downloadffmpeg-d2119f624d392f53f80c3d36ffaadca23aef8a10.tar.gz
imdct15: rename to mdct15 and add a forward transform
Handles strides (needed for Opus transients), does pre-reindexing and folding without needing a copy. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
Diffstat (limited to 'libavcodec/opus_celt.c')
-rw-r--r--libavcodec/opus_celt.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/libavcodec/opus_celt.c b/libavcodec/opus_celt.c
index 96fedb7a49..a0f018e664 100644
--- a/libavcodec/opus_celt.c
+++ b/libavcodec/opus_celt.c
@@ -29,7 +29,7 @@
#include "libavutil/float_dsp.h"
#include "libavutil/libm.h"
-#include "imdct15.h"
+#include "mdct15.h"
#include "opus.h"
#include "opustab.h"
@@ -63,7 +63,7 @@ typedef struct CeltFrame {
struct CeltContext {
// constant values that do not change during context lifetime
AVCodecContext *avctx;
- IMDCT15Context *imdct[4];
+ MDCT15Context *imdct[4];
AVFloatDSPContext *dsp;
int output_channels;
@@ -1596,7 +1596,7 @@ int ff_celt_decode_frame(CeltContext *s, OpusRangeCoder *rc,
int silence = 0;
int transient = 0;
int anticollapse = 0;
- IMDCT15Context *imdct;
+ MDCT15Context *imdct;
float imdct_scale = 1.0;
if (coded_channels != 1 && coded_channels != 2) {
@@ -1792,7 +1792,7 @@ void ff_celt_free(CeltContext **ps)
return;
for (i = 0; i < FF_ARRAY_ELEMS(s->imdct); i++)
- ff_imdct15_uninit(&s->imdct[i]);
+ ff_mdct15_uninit(&s->imdct[i]);
av_freep(&s->dsp);
av_freep(ps);
@@ -1817,7 +1817,7 @@ int ff_celt_init(AVCodecContext *avctx, CeltContext **ps, int output_channels)
s->output_channels = output_channels;
for (i = 0; i < FF_ARRAY_ELEMS(s->imdct); i++) {
- ret = ff_imdct15_init(&s->imdct[i], i + 3);
+ ret = ff_mdct15_init(&s->imdct[i], 1, i + 3, -1.0f);
if (ret < 0)
goto fail;
}