X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fwmaprodec.c;h=2ea59e9251e4a254bd2c5d0cf07ae498907d7fd4;hb=7d8891593c2833cdb6612828700efc2931377f76;hp=f8f901c22497c2a26bcfffd519861d3678ffc223;hpb=f49264a1c5912ee2bc23e7a09ded1024a178cf04;p=ffmpeg diff --git a/libavcodec/wmaprodec.c b/libavcodec/wmaprodec.c index f8f901c2249..2ea59e9251e 100644 --- a/libavcodec/wmaprodec.c +++ b/libavcodec/wmaprodec.c @@ -89,6 +89,7 @@ #include #include "libavutil/float_dsp.h" +#include "libavutil/internal.h" #include "libavutil/intfloat.h" #include "libavutil/intreadwrite.h" #include "avcodec.h" @@ -1221,7 +1222,7 @@ static int decode_subframe(WMAProDecodeCtx *s) int num_fill_bits; if (!(num_fill_bits = get_bits(&s->gb, 2))) { int len = get_bits(&s->gb, 4); - num_fill_bits = (len ? get_bits(&s->gb, len) : 0) + 1; + num_fill_bits = get_bitsz(&s->gb, len) + 1; } if (num_fill_bits >= 0) { @@ -1350,7 +1351,7 @@ static int decode_subframe(WMAProDecodeCtx *s) const int exp = s->channel[c].quant_step - (s->channel[c].max_scale_factor - *sf++) * s->channel[c].scale_factor_step; - const float quant = pow(10.0, exp / 20.0); + const float quant = ff_exp10(exp / 20.0); int start = s->cur_sfb_offsets[b]; s->fdsp->vector_fmul_scalar(s->tmp + start, s->channel[c].coeffs + start,