| Index: webrtc/modules/audio_processing/ns/nsx_core_c.c
|
| diff --git a/webrtc/modules/audio_processing/ns/nsx_core_c.c b/webrtc/modules/audio_processing/ns/nsx_core_c.c
|
| index da7aa3d5dbe76e3edea44835b2de6535ee44e53a..213320d38c85f51a305f85b4a1a24053e11e7462 100644
|
| --- a/webrtc/modules/audio_processing/ns/nsx_core_c.c
|
| +++ b/webrtc/modules/audio_processing/ns/nsx_core_c.c
|
| @@ -96,8 +96,8 @@ void WebRtcNsx_SpeechNoiseProb(NoiseSuppressionFixedC* inst,
|
| }
|
| tmp32no1 = WEBRTC_SPL_SHIFT_W32(tmp32no1, nShifts); // Q14
|
| // compute indicator function: sigmoid map
|
| - tableIndex = (int16_t)(tmp32no1 >> 14);
|
| - if ((tableIndex < 16) && (tableIndex >= 0)) {
|
| + if (tmp32no1 < (16 << 14) && tmp32no1 >= 0) {
|
| + tableIndex = (int16_t)(tmp32no1 >> 14);
|
| tmp16no2 = kIndicatorTable[tableIndex];
|
| tmp16no1 = kIndicatorTable[tableIndex + 1] - kIndicatorTable[tableIndex];
|
| frac = (int16_t)(tmp32no1 & 0x00003fff); // Q14
|
| @@ -128,8 +128,8 @@ void WebRtcNsx_SpeechNoiseProb(NoiseSuppressionFixedC* inst,
|
| // FLOAT code
|
| // indicator1 = 0.5 * (tanh(sgnMap * widthPrior *
|
| // (threshPrior1 - tmpFloat1)) + 1.0);
|
| - tableIndex = (int16_t)(tmpU32no1 >> 14);
|
| - if (tableIndex < 16) {
|
| + if (tmpU32no1 < (16 << 14)) {
|
| + tableIndex = (int16_t)(tmpU32no1 >> 14);
|
| tmp16no2 = kIndicatorTable[tableIndex];
|
| tmp16no1 = kIndicatorTable[tableIndex + 1] - kIndicatorTable[tableIndex];
|
| frac = (int16_t)(tmpU32no1 & 0x00003fff); // Q14
|
| @@ -175,8 +175,8 @@ void WebRtcNsx_SpeechNoiseProb(NoiseSuppressionFixedC* inst,
|
| /* FLOAT code
|
| indicator2 = 0.5 * (tanh(widthPrior * (tmpFloat1 - threshPrior2)) + 1.0);
|
| */
|
| - tableIndex = (int16_t)(tmpU32no1 >> 14);
|
| - if (tableIndex < 16) {
|
| + if (tmpU32no1 < (16 << 14)) {
|
| + tableIndex = (int16_t)(tmpU32no1 >> 14);
|
| tmp16no2 = kIndicatorTable[tableIndex];
|
| tmp16no1 = kIndicatorTable[tableIndex + 1] - kIndicatorTable[tableIndex];
|
| frac = (int16_t)(tmpU32no1 & 0x00003fff); // Q14
|
|
|