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

Side by Side Diff: webrtc/modules/audio_processing/aec/aec_core_internal.h

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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
214 float x_fft_buf[2][kExtendedNumPartitions * PART_LEN1], 214 float x_fft_buf[2][kExtendedNumPartitions * PART_LEN1],
215 float e_fft[2][PART_LEN1], 215 float e_fft[2][PART_LEN1],
216 float h_fft_buf[2][kExtendedNumPartitions * PART_LEN1]); 216 float h_fft_buf[2][kExtendedNumPartitions * PART_LEN1]);
217 extern WebRtcAecFilterAdaptation WebRtcAec_FilterAdaptation; 217 extern WebRtcAecFilterAdaptation WebRtcAec_FilterAdaptation;
218 typedef void (*WebRtcAecOverdriveAndSuppress)(float overdrive_scaling, 218 typedef void (*WebRtcAecOverdriveAndSuppress)(float overdrive_scaling,
219 float hNl[PART_LEN1], 219 float hNl[PART_LEN1],
220 const float hNlFb, 220 const float hNlFb,
221 float efw[2][PART_LEN1]); 221 float efw[2][PART_LEN1]);
222 extern WebRtcAecOverdriveAndSuppress WebRtcAec_OverdriveAndSuppress; 222 extern WebRtcAecOverdriveAndSuppress WebRtcAec_OverdriveAndSuppress;
223 223
224 typedef void (*WebRtcAecSubBandCoherence)(int mult, 224 typedef void (*WebRtcAecComputeCoherence)(const CoherenceState* coherence_state,
225 bool extended_filter_enabled,
226 float efw[2][PART_LEN1],
227 float dfw[2][PART_LEN1],
228 float xfw[2][PART_LEN1],
229 float* fft,
230 float* cohde, 225 float* cohde,
231 float* cohxd, 226 float* cohxd);
232 CoherenceState* coherence_state, 227 extern WebRtcAecComputeCoherence WebRtcAec_ComputeCoherence;
233 short* filter_divergence_state, 228
234 int* extreme_filter_divergence); 229 typedef void (*WebRtcAecUpdateCoherenceSpectra)(int mult,
235 extern WebRtcAecSubBandCoherence WebRtcAec_SubbandCoherence; 230 bool extended_filter_enabled,
231 float efw[2][PART_LEN1],
232 float dfw[2][PART_LEN1],
233 float xfw[2][PART_LEN1],
234 CoherenceState* coherence_state,
235 short* filter_divergence_state,
236 int* extreme_filter_divergence);
237 extern WebRtcAecUpdateCoherenceSpectra WebRtcAec_UpdateCoherenceSpectra;
236 238
237 typedef int (*WebRtcAecPartitionDelay)( 239 typedef int (*WebRtcAecPartitionDelay)(
238 int num_partitions, 240 int num_partitions,
239 float h_fft_buf[2][kExtendedNumPartitions * PART_LEN1]); 241 float h_fft_buf[2][kExtendedNumPartitions * PART_LEN1]);
240 extern WebRtcAecPartitionDelay WebRtcAec_PartitionDelay; 242 extern WebRtcAecPartitionDelay WebRtcAec_PartitionDelay;
241 243
242 typedef void (*WebRtcAecStoreAsComplex)(const float* data, 244 typedef void (*WebRtcAecStoreAsComplex)(const float* data,
243 float data_complex[2][PART_LEN1]); 245 float data_complex[2][PART_LEN1]);
244 extern WebRtcAecStoreAsComplex WebRtcAec_StoreAsComplex; 246 extern WebRtcAecStoreAsComplex WebRtcAec_StoreAsComplex;
245 247
246 typedef void (*WebRtcAecWindowData)(float* x_windowed, const float* x); 248 typedef void (*WebRtcAecWindowData)(float* x_windowed, const float* x);
247 extern WebRtcAecWindowData WebRtcAec_WindowData; 249 extern WebRtcAecWindowData WebRtcAec_WindowData;
248 250
249 } // namespace webrtc 251 } // namespace webrtc
250 252
251 #endif // WEBRTC_MODULES_AUDIO_PROCESSING_AEC_AEC_CORE_INTERNAL_H_ 253 #endif // WEBRTC_MODULES_AUDIO_PROCESSING_AEC_AEC_CORE_INTERNAL_H_
OLDNEW
« no previous file with comments | « webrtc/modules/audio_processing/aec/aec_core.cc ('k') | webrtc/modules/audio_processing/aec/aec_core_neon.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698