[FFmpeg-soc] [soc]: r4095 - amr/amrnbfloatdec.c

kmalaussene subversion at mplayerhq.hu
Thu Feb 19 05:47:01 CET 2009


Author: kmalaussene
Date: Thu Feb 19 05:47:00 2009
New Revision: 4095

Log:
Remove ir_filter from AMRContext, because it does not need to be
saved for the next subframe.

Modified:
   amr/amrnbfloatdec.c

Modified: amr/amrnbfloatdec.c
==============================================================================
--- amr/amrnbfloatdec.c	Thu Feb 19 05:18:55 2009	(r4094)
+++ amr/amrnbfloatdec.c	Thu Feb 19 05:47:00 2009	(r4095)
@@ -78,7 +78,6 @@ typedef struct AMRContext {
     int                          diff_count; ///< the number of subframes for which diff has been above 0.65
 
     uint8_t         prev_ir_filter_strength; ///< previous impulse response filter strength; 0 - strong, 1 - medium, 2 - none
-    const float                  *ir_filter; ///< pointer to impulse response filter data
 
     float samples_in[LP_FILTER_ORDER + AMR_SUBFRAME_SIZE]; ///< floating point samples
 
@@ -802,19 +801,20 @@ void do_phase_dispersion(AMRContext *p)
 
     if(p->cur_frame_mode != MODE_74 && p->cur_frame_mode != MODE_102 &&
             p->cur_frame_mode != MODE_122 && ir_filter_strength < 2) {
+        const float *ir_filter;
         // assign the correct impulse response
         if(ir_filter_strength == 1) {
-            p->ir_filter = ir_filter_medium;
+            ir_filter = ir_filter_medium;
         }else {
             if(p->cur_frame_mode != MODE_795) {
-                p->ir_filter = ir_filter_strong;
+                ir_filter = ir_filter_strong;
             }else {
-                p->ir_filter = ir_filter_strong_MODE_795;
+                ir_filter = ir_filter_strong_MODE_795;
             }
         }
 
         // circularly convolve the fixed vector with the impulse response
-        convolve_circ(p->fixed_vector, p->ir_filter);
+        convolve_circ(p->fixed_vector, ir_filter);
     }
 
     // update ir filter strength history



More information about the FFmpeg-soc mailing list