Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(181)

Unified Diff: webrtc/modules/audio_processing/aec/aec_core_neon.cc

Issue 1943193002: Broke apart the functionalities in the SubbandCoherence method in the AEC (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@RefactorAec4_CL
Patch Set: Rebase Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webrtc/modules/audio_processing/aec/aec_core_neon.cc
diff --git a/webrtc/modules/audio_processing/aec/aec_core_neon.cc b/webrtc/modules/audio_processing/aec/aec_core_neon.cc
index 06743b5410a96eb61cefbad8d8de67f42b12a1b6..5ff81496d5571bcb13db9e400280745225df5262 100644
--- a/webrtc/modules/audio_processing/aec/aec_core_neon.cc
+++ b/webrtc/modules/audio_processing/aec/aec_core_neon.cc
@@ -504,14 +504,14 @@ static int PartitionDelayNEON(
//
// In addition to updating the PSDs, also the filter diverge state is determined
// upon actions are taken.
-static void SmoothedPSD(int mult,
- bool extended_filter_enabled,
- float efw[2][PART_LEN1],
- float dfw[2][PART_LEN1],
- float xfw[2][PART_LEN1],
- CoherenceState* coherence_state,
- short* filter_divergence_state,
- int* extreme_filter_divergence) {
+static void UpdateCoherenceSpectraNEON(int mult,
+ bool extended_filter_enabled,
+ float efw[2][PART_LEN1],
+ float dfw[2][PART_LEN1],
+ float xfw[2][PART_LEN1],
+ CoherenceState* coherence_state,
+ short* filter_divergence_state,
+ int* extreme_filter_divergence) {
// Power estimate smoothing coefficients.
const float* ptrGCoh =
extended_filter_enabled
@@ -679,22 +679,11 @@ static void StoreAsComplexNEON(const float* data,
data_complex[0][PART_LEN] = data[1];
}
-static void SubbandCoherenceNEON(int mult,
- bool extended_filter_enabled,
- float efw[2][PART_LEN1],
- float dfw[2][PART_LEN1],
- float xfw[2][PART_LEN1],
- float* fft,
+static void ComputeCoherenceNEON(const CoherenceState* coherence_state,
float* cohde,
- float* cohxd,
- CoherenceState* coherence_state,
- short* filter_divergence_state,
- int* extreme_filter_divergence) {
+ float* cohxd) {
int i;
- SmoothedPSD(mult, extended_filter_enabled, efw, dfw, xfw, coherence_state,
- filter_divergence_state, extreme_filter_divergence);
-
{
const float32x4_t vec_1eminus10 = vdupq_n_f32(1e-10f);
@@ -734,7 +723,8 @@ void WebRtcAec_InitAec_neon(void) {
WebRtcAec_ScaleErrorSignal = ScaleErrorSignalNEON;
WebRtcAec_FilterAdaptation = FilterAdaptationNEON;
WebRtcAec_OverdriveAndSuppress = OverdriveAndSuppressNEON;
- WebRtcAec_SubbandCoherence = SubbandCoherenceNEON;
+ WebRtcAec_ComputeCoherence = ComputeCoherenceNEON;
+ WebRtcAec_UpdateCoherenceSpectra = UpdateCoherenceSpectraNEON;
WebRtcAec_StoreAsComplex = StoreAsComplexNEON;
WebRtcAec_PartitionDelay = PartitionDelayNEON;
WebRtcAec_WindowData = WindowDataNEON;
« no previous file with comments | « webrtc/modules/audio_processing/aec/aec_core_internal.h ('k') | webrtc/modules/audio_processing/aec/aec_core_sse2.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698