[FFmpeg-cvslog] ra288: avoid one multiply

Michael Niedermayer git at videolan.org
Tue Aug 9 16:28:51 CEST 2011


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Tue Aug  9 15:08:20 2011 +0200| [aae1c247b1cd5f17c137f5c7f357c519200b1017] | committer: Michael Niedermayer

ra288: avoid one multiply

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

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

 libavcodec/ra288.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/libavcodec/ra288.c b/libavcodec/ra288.c
index 9445e70..f2b97cc 100644
--- a/libavcodec/ra288.c
+++ b/libavcodec/ra288.c
@@ -96,14 +96,14 @@ static void decode(RA288Context *ractx, float gain, int cb_coef)
     for (i=0; i < 5; i++)
         buffer[i] = codetable[cb_coef][i] * sumsum;
 
-    sum = ff_dot_productf(buffer, buffer, 5) * ((1<<24)/5.);
+    sum = ff_dot_productf(buffer, buffer, 5);
 
-    sum = FFMAX(sum, 1);
+    sum = FFMAX(sum, 5. / (1<<24));
 
     /* shift and store */
     memmove(gain_block, gain_block + 1, 9 * sizeof(*gain_block));
 
-    gain_block[9] = 10 * log10(sum) - 32;
+    gain_block[9] = 10 * log10(sum) + (10*log10(((1<<24)/5.)) - 32);
 
     ff_celp_lp_synthesis_filterf(block, ractx->sp_lpc, buffer, 5, 36);
 }



More information about the ffmpeg-cvslog mailing list