diff --git a/webrtc/common_audio/signal_processing/energy.c b/webrtc/common_audio/signal_processing/energy.c index a8698e010..0611ad3e9 100644 --- a/webrtc/common_audio/signal_processing/energy.c +++ b/webrtc/common_audio/signal_processing/energy.c @@ -27,8 +27,8 @@ int32_t WebRtcSpl_Energy(int16_t* vector, int vector_length, int* scale_factor) for (i = 0; i < looptimes; i++) { - en += WEBRTC_SPL_MUL_16_16_RSFT(*vectorptr, *vectorptr, scaling); - vectorptr++; + en += (*vectorptr * *vectorptr) >> scaling; + vectorptr++; } *scale_factor = scaling; diff --git a/webrtc/common_audio/signal_processing/ilbc_specific_functions.c b/webrtc/common_audio/signal_processing/ilbc_specific_functions.c index 4a1a7d61a..de870b239 100644 --- a/webrtc/common_audio/signal_processing/ilbc_specific_functions.c +++ b/webrtc/common_audio/signal_processing/ilbc_specific_functions.c @@ -32,8 +32,7 @@ void WebRtcSpl_ReverseOrderMultArrayElements(int16_t *out, const int16_t *in, const int16_t *winptr = win; for (i = 0; i < vector_length; i++) { - (*outptr++) = (int16_t)WEBRTC_SPL_MUL_16_16_RSFT(*inptr++, - *winptr--, right_shifts); + *outptr++ = (int16_t)((*inptr++ * *winptr--) >> right_shifts); } } @@ -47,8 +46,7 @@ void WebRtcSpl_ElementwiseVectorMult(int16_t *out, const int16_t *in, const int16_t *winptr = win; for (i = 0; i < vector_length; i++) { - (*outptr++) = (int16_t)WEBRTC_SPL_MUL_16_16_RSFT(*inptr++, - *winptr++, right_shifts); + *outptr++ = (int16_t)((*inptr++ * *winptr++) >> right_shifts); } } diff --git a/webrtc/common_audio/signal_processing/include/signal_processing_library.h b/webrtc/common_audio/signal_processing/include/signal_processing_library.h index a1dc6aa06..7014fa1df 100644 --- a/webrtc/common_audio/signal_processing/include/signal_processing_library.h +++ b/webrtc/common_audio/signal_processing/include/signal_processing_library.h @@ -92,7 +92,7 @@ #define WEBRTC_SPL_RSHIFT_U32(x, c) ((uint32_t)(x) >> (c)) #define WEBRTC_SPL_RAND(a) \ - ((int16_t)(WEBRTC_SPL_MUL_16_16_RSFT((a), 18816, 7) & 0x00007fff)) + ((int16_t)((((int16_t)a * 18816) >> 7) & 0x00007fff)) #ifdef __cplusplus extern "C" { diff --git a/webrtc/common_audio/signal_processing/refl_coef_to_lpc.c b/webrtc/common_audio/signal_processing/refl_coef_to_lpc.c index 17055c9c7..06a29b663 100644 --- a/webrtc/common_audio/signal_processing/refl_coef_to_lpc.c +++ b/webrtc/common_audio/signal_processing/refl_coef_to_lpc.c @@ -41,8 +41,7 @@ void WebRtcSpl_ReflCoefToLpc(const int16_t *k, int use_order, int16_t *a) any[m + 1] = *kptr >> 3; for (i = 0; i < m; i++) { - *anyptr = (*aptr) - + (int16_t)WEBRTC_SPL_MUL_16_16_RSFT((*aptr2), (*kptr), 15); + *anyptr = *aptr + (int16_t)((*aptr2 * *kptr) >> 15); anyptr++; aptr++; aptr2--; diff --git a/webrtc/common_audio/signal_processing/vector_scaling_operations.c b/webrtc/common_audio/signal_processing/vector_scaling_operations.c index c3eaa2893..736f62c71 100644 --- a/webrtc/common_audio/signal_processing/vector_scaling_operations.c +++ b/webrtc/common_audio/signal_processing/vector_scaling_operations.c @@ -97,7 +97,7 @@ void WebRtcSpl_ScaleVector(const int16_t *in_vector, int16_t *out_vector, for (i = 0; i < in_vector_length; i++) { - (*outptr++) = (int16_t)WEBRTC_SPL_MUL_16_16_RSFT(*inptr++, gain, right_shifts); + *outptr++ = (int16_t)((*inptr++ * gain) >> right_shifts); } } @@ -107,17 +107,14 @@ void WebRtcSpl_ScaleVectorWithSat(const int16_t *in_vector, int16_t *out_vector, { // Performs vector operation: out_vector = (gain*in_vector)>>right_shifts int i; - int32_t tmpW32; const int16_t *inptr; int16_t *outptr; inptr = in_vector; outptr = out_vector; - for (i = 0; i < in_vector_length; i++) - { - tmpW32 = WEBRTC_SPL_MUL_16_16_RSFT(*inptr++, gain, right_shifts); - (*outptr++) = WebRtcSpl_SatW32ToW16(tmpW32); + for (i = 0; i < in_vector_length; i++) { + *outptr++ = WebRtcSpl_SatW32ToW16((*inptr++ * gain) >> right_shifts); } } @@ -137,8 +134,8 @@ void WebRtcSpl_ScaleAndAddVectors(const int16_t *in1, int16_t gain1, int shift1, for (i = 0; i < vector_length; i++) { - (*outptr++) = (int16_t)WEBRTC_SPL_MUL_16_16_RSFT(gain1, *in1ptr++, shift1) - + (int16_t)WEBRTC_SPL_MUL_16_16_RSFT(gain2, *in2ptr++, shift2); + *outptr++ = (int16_t)((gain1 * *in1ptr++) >> shift1) + + (int16_t)((gain2 * *in2ptr++) >> shift2); } }