summaryrefslogtreecommitdiff
path: root/libavcodec/binkaudio.c
diff options
context:
space:
mode:
authorDaniel Verkamp <daniel@drv.nu>2010-02-19 20:51:12 +0000
committerDaniel Verkamp <daniel@drv.nu>2010-02-19 20:51:12 +0000
commite0ae359115aa6ef7f5c4e253811598e07679b16a (patch)
treeb06f97e5f2e9d9d428c80486a21c2a443e7ac062 /libavcodec/binkaudio.c
parent3a201bd04f3455535f9760ac610bd0b60573d264 (diff)
Fix compilation of binkaudio_rdft when dct is disabled
Originally committed as revision 21903 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/binkaudio.c')
-rw-r--r--libavcodec/binkaudio.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/libavcodec/binkaudio.c b/libavcodec/binkaudio.c
index 1e71cd8100..1aca5bceb0 100644
--- a/libavcodec/binkaudio.c
+++ b/libavcodec/binkaudio.c
@@ -122,10 +122,12 @@ static av_cold int decode_init(AVCodecContext *avctx)
for (i = 0; i < s->channels; i++)
s->coeffs_ptr[i] = s->coeffs + i * s->frame_len;
- if (avctx->codec->id == CODEC_ID_BINKAUDIO_RDFT)
+ if (CONFIG_BINKAUDIO_RDFT_DECODER && avctx->codec->id == CODEC_ID_BINKAUDIO_RDFT)
ff_rdft_init(&s->trans.rdft, frame_len_bits, IRIDFT);
- else
+ else if (CONFIG_BINKAUDIO_DCT_DECODER)
ff_dct_init(&s->trans.dct, frame_len_bits, 0);
+ else
+ return -1;
return 0;
}
@@ -209,9 +211,9 @@ static void decode_block(BinkAudioContext *s, short *out, int use_dct)
}
}
- if (use_dct)
+ if (CONFIG_BINKAUDIO_DCT_DECODER && use_dct)
ff_dct_calc (&s->trans.dct, coeffs);
- else
+ else if (CONFIG_BINKAUDIO_RDFT_DECODER)
ff_rdft_calc(&s->trans.rdft, coeffs);
}
@@ -235,9 +237,9 @@ static av_cold int decode_end(AVCodecContext *avctx)
{
BinkAudioContext * s = avctx->priv_data;
av_freep(&s->bands);
- if (avctx->codec->id == CODEC_ID_BINKAUDIO_RDFT)
+ if (CONFIG_BINKAUDIO_RDFT_DECODER && avctx->codec->id == CODEC_ID_BINKAUDIO_RDFT)
ff_rdft_end(&s->trans.rdft);
- else
+ else if (CONFIG_BINKAUDIO_DCT_DECODER)
ff_dct_end(&s->trans.dct);
return 0;
}