Forcing clamping the pitch lag within the limits of the buffer
authorJean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Fri, 8 Jul 2011 13:21:14 +0000 (09:21 -0400)
committerJean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Fri, 8 Jul 2011 13:21:14 +0000 (09:21 -0400)
silk/silk_decode_pitch.c

index 7ec472e..62dc2c5 100644 (file)
@@ -39,7 +39,7 @@ void silk_decode_pitch(
     const SKP_int   nb_subfr                         /* I number of sub frames        */\r
 )\r
 {\r
-    SKP_int   lag, k, min_lag, cbk_size;\r
+    SKP_int   lag, k, min_lag, max_lag, cbk_size;\r
     const SKP_int8 *Lag_CB_ptr;\r
 \r
     if( Fs_kHz == 8 ) {\r
@@ -63,9 +63,11 @@ void silk_decode_pitch(
     }\r
 \r
     min_lag = SKP_SMULBB( PE_MIN_LAG_MS, Fs_kHz );\r
+    max_lag = SKP_SMULBB( PE_MAX_LAG_MS, Fs_kHz );\r
     lag = min_lag + lagIndex;\r
 \r
     for( k = 0; k < nb_subfr; k++ ) {\r
         pitch_lags[ k ] = lag + matrix_ptr( Lag_CB_ptr, k, contourIndex, cbk_size );\r
+        pitch_lags[ k ] = SKP_LIMIT( pitch_lags[ k ], min_lag, max_lag );\r
     }\r
 }
\ No newline at end of file