summaryrefslogtreecommitdiff
path: root/modules/audio_coding/codecs/isac/fix/source/lpc_masking_model.h
diff options
context:
space:
mode:
authorandrew@webrtc.org <andrew@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d>2014-07-21 16:43:13 +0000
committerandrew@webrtc.org <andrew@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d>2014-07-21 16:43:13 +0000
commite4834e042a794dbf042bfd0934e335598d7ce4b8 (patch)
tree3770a2234bf16beb8d934d943c9b8f0f27724225 /modules/audio_coding/codecs/isac/fix/source/lpc_masking_model.h
parentf0a119fa99a8c384c30f3eb049c54091a6a1a828 (diff)
downloadwebrtc-e4834e042a794dbf042bfd0934e335598d7ce4b8.tar.gz
MIPS optimizations for ISAC (patch #2)
Implemented functions: - WebRtcIsacfix_CalculateResidualEnergy - WebRtcIsacfix_Spec2Time - WebRtcIsacfix_Time2Spec - WebRtcIsacfix_HighpassFilterFixDec32 - WebRtcIsacfix_PCorr2Q32 Gain achieved: aprox. further 5% on top of patch#1 on ISAC encoding path. The optimizations are bit-exact to the C code, with the excception of the MIPS DSPr2 variant of the WebRtcIsacfix_Time2Spec function (the accuracy of the WebRtcIsacfix_Time2Spec MIPS DSPr2 variant is same or better than C variant). Code verification and improvement achieved have been determined using the iSACFixtest application. R=andrew@webrtc.org, tina.legrand@webrtc.org Review URL: https://webrtc-codereview.appspot.com/19749004 Patch from Ljubomir Papuga <lpapuga@mips.com>. git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6749 4adac7df-926f-26a2-2b94-8c16560cd09d
Diffstat (limited to 'modules/audio_coding/codecs/isac/fix/source/lpc_masking_model.h')
-rw-r--r--modules/audio_coding/codecs/isac/fix/source/lpc_masking_model.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/modules/audio_coding/codecs/isac/fix/source/lpc_masking_model.h b/modules/audio_coding/codecs/isac/fix/source/lpc_masking_model.h
index 72e0cfc4..1270c142 100644
--- a/modules/audio_coding/codecs/isac/fix/source/lpc_masking_model.h
+++ b/modules/audio_coding/codecs/isac/fix/source/lpc_masking_model.h
@@ -62,6 +62,15 @@ int32_t WebRtcIsacfix_CalculateResidualEnergyNeon(int lpc_order,
int* q_val_residual_energy);
#endif
+#if defined(MIPS_DSP_R2_LE)
+int32_t WebRtcIsacfix_CalculateResidualEnergyMIPS(int lpc_order,
+ int32_t q_val_corr,
+ int q_val_polynomial,
+ int16_t* a_polynomial,
+ int32_t* corr_coeffs,
+ int* q_val_residual_energy);
+#endif
+
#ifdef __cplusplus
} /* extern "C" */
#endif