#include "dsputil.h"
#include "fft.h"
#include "libavutil/audioconvert.h"
+#include "libavutil/libm.h"
#include "sinewin.h"
#include "imcdata.h"
float sqrt_tab[30];
GetBitContext gb;
- float one_div_log2;
DSPContext dsp;
FFTContext fft;
IMCContext *q = avctx->priv_data;
double r1, r2;
- if ((avctx->codec_id == CODEC_ID_IMC && avctx->channels != 1)
- || (avctx->codec_id == CODEC_ID_IAC && avctx->channels > 2)) {
+ if ((avctx->codec_id == AV_CODEC_ID_IMC && avctx->channels != 1)
+ || (avctx->codec_id == AV_CODEC_ID_IAC && avctx->channels > 2)) {
av_log_ask_for_sample(avctx, "Number of channels is not supported\n");
return AVERROR_PATCHWELCOME;
}
imc_huffman_bits[i][j], 2, 2, INIT_VLC_USE_NEW_STATIC);
}
}
- q->one_div_log2 = 1 / log(2);
- if (avctx->codec_id == CODEC_ID_IAC) {
- }
-
- if (avctx->codec_id == CODEC_ID_IAC) {
+ if (avctx->codec_id == AV_CODEC_ID_IAC) {
iac_generate_tabs(q, avctx->sample_rate);
} else {
memcpy(q->cyclTab, cyclTab, sizeof(cyclTab));
float tmp, tmp2;
// maybe some frequency division thingy
- flcoeffs1[0] = 20000.0 / pow (2, levlCoeffBuf[0] * 0.18945); // 0.18945 = log2(10) * 0.05703125
- flcoeffs2[0] = log(flcoeffs1[0]) / log(2);
+ flcoeffs1[0] = 20000.0 / exp2 (levlCoeffBuf[0] * 0.18945); // 0.18945 = log2(10) * 0.05703125
+ flcoeffs2[0] = log2f(flcoeffs1[0]);
tmp = flcoeffs1[0];
tmp2 = flcoeffs2[0];
highest = FFMAX(highest, chctx->flcoeffs1[i]);
for (i = 0; i < BANDS - 1; i++)
- chctx->flcoeffs4[i] = chctx->flcoeffs3[i] - log(chctx->flcoeffs5[i]) / log(2);
+ chctx->flcoeffs4[i] = chctx->flcoeffs3[i] - log2f(chctx->flcoeffs5[i]);
chctx->flcoeffs4[BANDS - 1] = limit;
highest = highest * 0.25;
chctx->decoder_reset = 1;
if (chctx->decoder_reset) {
- memset(q->out_samples, 0, sizeof(q->out_samples));
+ memset(q->out_samples, 0, COEFFS * sizeof(*q->out_samples));
for (i = 0; i < BANDS; i++)
chctx->old_floor[i] = 1.0;
for (i = 0; i < COEFFS; i++)
}
}
}
- if (avctx->codec_id == CODEC_ID_IAC) {
+ if (avctx->codec_id == AV_CODEC_ID_IAC) {
bitscount += !!chctx->bandWidthT[BANDS - 1];
if (!(stream_format_code & 0x2))
bitscount += 16;
AVCodec ff_imc_decoder = {
.name = "imc",
.type = AVMEDIA_TYPE_AUDIO,
- .id = CODEC_ID_IMC,
+ .id = AV_CODEC_ID_IMC,
.priv_data_size = sizeof(IMCContext),
.init = imc_decode_init,
.close = imc_decode_close,
AVCodec ff_iac_decoder = {
.name = "iac",
.type = AVMEDIA_TYPE_AUDIO,
- .id = CODEC_ID_IAC,
+ .id = AV_CODEC_ID_IAC,
.priv_data_size = sizeof(IMCContext),
.init = imc_decode_init,
.close = imc_decode_close,