[FFmpeg-cvslog] r14443 - trunk/libavcodec/ra288.c

vitor subversion
Mon Jul 28 00:21:41 CEST 2008


Author: vitor
Date: Mon Jul 28 00:21:41 2008
New Revision: 14443

Log:
Remove the history buffer from the context. It can easily be evaluated 
from the lhist buffer.


Modified:
   trunk/libavcodec/ra288.c

Modified: trunk/libavcodec/ra288.c
==============================================================================
--- trunk/libavcodec/ra288.c	(original)
+++ trunk/libavcodec/ra288.c	Mon Jul 28 00:21:41 2008
@@ -25,7 +25,6 @@
 #include "ra288.h"
 
 typedef struct {
-    float history[8];
     float output[40];
     float sp_lpc[36];   ///< LPC coefficients for speech data (spec: A)
     float gain_lpc[10]; ///< LPC coefficients for gain (spec: GB)
@@ -92,7 +91,7 @@ static void decode(RA288Context *ractx, 
     /* shift and store */
     memmove(ractx->lhist, ractx->lhist - 1, 10 * sizeof(*ractx->lhist));
 
-    *ractx->lhist = ractx->history[ractx->phase] = 10 * log10(sum) - 32;
+    *ractx->lhist = 10 * log10(sum) - 32;
 
     for (x=1; x < 5; x++)
         for (y=x-1; y >= 0; y--)
@@ -198,6 +197,11 @@ static void backward_filter(RA288Context
 {
     float temp1[37]; // RTMP in the spec
     float temp2[11]; // GPTPMP in the spec
+    float history[8];
+    int i;
+
+    for (i=0 ; i < 8; i++)
+        history[i] = ractx->lhist[7-i];
 
     do_hybrid_window(36, 40, 35, ractx->output, temp1, ractx->sp_hist,
                      ractx->sp_rec, syn_window);
@@ -205,7 +209,7 @@ static void backward_filter(RA288Context
     if (!eval_lpc_coeffs(temp1, ractx->sp_lpc, 36))
         colmult(ractx->sp_lpc, ractx->sp_lpc, syn_bw_tab, 36);
 
-    do_hybrid_window(10, 8, 20, ractx->history, temp2, ractx->gain_hist,
+    do_hybrid_window(10, 8, 20, history, temp2, ractx->gain_hist,
                      ractx->gain_rec, gain_window);
 
     if (!eval_lpc_coeffs(temp2, ractx->gain_lpc, 10))




More information about the ffmpeg-cvslog mailing list