[FFmpeg-cvslog] opus_celt: do not use double precision exp2

Rostislav Pehlivanov git at videolan.org
Fri Jun 23 00:38:20 EEST 2017


ffmpeg | branch: master | Rostislav Pehlivanov <atomnuker at gmail.com> | Thu Jun 22 22:37:53 2017 +0100| [7e98da9c4f423a26929188aa0aba5b9b3c5989b0] | committer: Rostislav Pehlivanov

opus_celt: do not use double precision exp2

Signed-off-by: Rostislav Pehlivanov <atomnuker at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=7e98da9c4f423a26929188aa0aba5b9b3c5989b0
---

 libavcodec/opus_celt.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/opus_celt.c b/libavcodec/opus_celt.c
index feb604d9af..23749a7d22 100644
--- a/libavcodec/opus_celt.c
+++ b/libavcodec/opus_celt.c
@@ -485,7 +485,7 @@ static void celt_denormalize(CeltFrame *f, CeltBlock *block, float *data)
 
     for (i = f->start_band; i < f->end_band; i++) {
         float *dst = data + (ff_celt_freq_bands[i] << f->size);
-        float norm = exp2(block->energy[i] + ff_celt_mean_energy[i]);
+        float norm = exp2f(block->energy[i] + ff_celt_mean_energy[i]);
 
         for (j = 0; j < ff_celt_freq_range[i] << f->size; j++)
             dst[j] *= norm;
@@ -664,7 +664,7 @@ static void process_anticollapse(CeltFrame *f, CeltBlock *block, float *X)
 
         /* r needs to be multiplied by 2 or 2*sqrt(2) depending on LM because
         short blocks don't have the same energy as long */
-        r = exp2(1 - Ediff);
+        r = exp2f(1 - Ediff);
         if (f->size == 3)
             r *= M_SQRT2;
         r = FFMIN(thresh, r) * sqrt_1;



More information about the ffmpeg-cvslog mailing list