diff options
Diffstat (limited to 'modules/audio_processing/ns/nsx_core.c')
-rw-r--r-- | modules/audio_processing/ns/nsx_core.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/modules/audio_processing/ns/nsx_core.c b/modules/audio_processing/ns/nsx_core.c index e627a2ef..2c8270f5 100644 --- a/modules/audio_processing/ns/nsx_core.c +++ b/modules/audio_processing/ns/nsx_core.c @@ -1407,9 +1407,9 @@ void WebRtcNsx_DataAnalysis(NsxInst_t* inst, short* speechFrame, uint16_t* magnU tmpU32no1 = WEBRTC_SPL_RSHIFT_U32((uint32_t)sum_log_i_log_magn, 12); // Q5 // Shift the largest value of sum_log_i and tmp32no3 before multiplication - tmp_u16 = WEBRTC_SPL_LSHIFT_U16((uint16_t)sum_log_i, 1); // Q6 + tmp_u16 = ((uint16_t)sum_log_i << 1); // Q6 if ((uint32_t)sum_log_i > tmpU32no1) { - tmp_u16 = WEBRTC_SPL_RSHIFT_U16(tmp_u16, zeros); + tmp_u16 >>= zeros; } else { tmpU32no1 = WEBRTC_SPL_RSHIFT_U32(tmpU32no1, zeros); } @@ -2071,8 +2071,8 @@ int WebRtcNsx_ProcessCore(NsxInst_t* inst, short* speechFrame, short* speechFram tmpU16no1 += nonSpeechProbFinal[i]; // Q8 tmpU32no1 += (uint32_t)(inst->noiseSupFilter[i]); // Q14 } - avgProbSpeechHB = (int16_t)(4096 - - WEBRTC_SPL_RSHIFT_U16(tmpU16no1, inst->stages - 7)); // Q12 + assert(inst->stages >= 7); + avgProbSpeechHB = (4096 - (tmpU16no1 >> (inst->stages - 7))); // Q12 avgFilterGainHB = (int16_t)WEBRTC_SPL_RSHIFT_U32( tmpU32no1, inst->stages - 3); // Q14 |