webrtc/modules/audio_processing/aec3
Jesús de Vicente Peña 44974e143c AEC3: Adding a correction factor for the Erle estimation that depends on the portion of the filter that is currently in use.
In this CL a more precise estimation of the Erle is introduced. This is done by creating different estimators that are specialized in different regions of the linear filter. An estimation of which regions were used for generating the current echo estimate is performed and used for selecting the right Erle estimator.

Bug: webrtc:9961
Change-Id: Iba6eb24596c067c3c66d40df590be379d3e1bb7b
Reviewed-on: https://webrtc-review.googlesource.com/c/109400
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Jesus de Vicente Pena <devicentepena@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25707}
2018-11-20 12:28:05 +00:00
..
mock AEC3: Decrease latency until the delay has been detected 2018-10-31 07:29:48 +00:00
adaptive_fir_filter.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
adaptive_fir_filter.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
adaptive_fir_filter_unittest.cc Make fewer copies when using StringBuilder. 2018-09-24 09:39:19 +00:00
aec3_common.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
aec3_common.h AEC3: Increasing the accuracy of the detection for early reverb 2018-07-30 22:34:19 +00:00
aec3_fft.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
aec3_fft.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
aec3_fft_unittest.cc Removed the updating of the padding data buffer in the AEC3 FFT 2018-04-27 19:26:03 +00:00
aec_state.cc AEC3: Adding a correction factor for the Erle estimation that depends on the portion of the filter that is currently in use. 2018-11-20 12:28:05 +00:00
aec_state.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
aec_state_unittest.cc AEC3: Changes to initial behavior and handling of saturated echo 2018-10-16 13:22:44 +00:00
block_delay_buffer.cc AEC3: Adding the option for applying a fixed delay to the capture signal 2018-08-23 10:05:07 +00:00
block_delay_buffer.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
block_delay_buffer_unittest.cc AEC3: Adding the option for applying a fixed delay to the capture signal 2018-08-23 10:05:07 +00:00
block_framer.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
block_framer.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
block_framer_unittest.cc Make fewer copies when using StringBuilder. 2018-09-24 09:39:19 +00:00
block_processor.cc AEC3: Decrease latency until the delay has been detected 2018-10-31 07:29:48 +00:00
block_processor.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
block_processor2.cc AEC3: Decrease latency until the delay has been detected 2018-10-31 07:29:48 +00:00
block_processor_metrics.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
block_processor_metrics.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
block_processor_metrics_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
block_processor_unittest.cc AEC3: Simplify render buffering 2018-10-15 13:31:50 +00:00
BUILD.gn AEC3: Adding a correction factor for the Erle estimation that depends on the portion of the filter that is currently in use. 2018-11-20 12:28:05 +00:00
cascaded_biquad_filter.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
cascaded_biquad_filter.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
cascaded_biquad_filter_unittest.cc AEC3: Move decimator filters to the new notation 2018-06-07 08:09:17 +00:00
comfort_noise_generator.cc AEC3: Compensate comfort noise level for loss due to filter bank 2018-11-06 16:17:02 +00:00
comfort_noise_generator.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
comfort_noise_generator_unittest.cc AEC3: Compensate comfort noise level for loss due to filter bank 2018-11-06 16:17:02 +00:00
decimator.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
decimator.h AEC3: Delay estimator uses bandpass filtered signal with downsampling factor 8 2018-05-25 09:31:38 +00:00
decimator_unittest.cc Make fewer copies when using StringBuilder. 2018-09-24 09:39:19 +00:00
delay_estimate.h Inform the AEC3 echo remover about the status of the estimated delay 2018-02-21 17:08:36 +00:00
downsampled_render_buffer.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
downsampled_render_buffer.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
echo_audibility.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
echo_audibility.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
echo_canceller3.cc AEC3: Turn off the specific suppressor mode for stationary render 2018-11-14 15:45:47 +00:00
echo_canceller3.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
echo_canceller3_unittest.cc Make fewer copies when using StringBuilder. 2018-09-24 09:39:19 +00:00
echo_path_delay_estimator.cc AEC3: Decrease latency until the delay has been detected 2018-10-31 07:29:48 +00:00
echo_path_delay_estimator.h AEC3: Decrease latency until the delay has been detected 2018-10-31 07:29:48 +00:00
echo_path_delay_estimator_unittest.cc AEC3: Simplify render buffering 2018-10-15 13:31:50 +00:00
echo_path_variability.cc Redesign of the render buffering in AEC3 2017-12-01 23:14:32 +00:00
echo_path_variability.h Redesign of the render buffering in AEC3 2017-12-01 23:14:32 +00:00
echo_path_variability_unittest.cc Redesign of the render buffering in AEC3 2017-12-01 23:14:32 +00:00
echo_remover.cc AEC3: Computation of comfort noise gains from suppression gains 2018-11-06 16:10:52 +00:00
echo_remover.h AEC3: Adding explicit handling of microphone gain changes 2018-07-16 16:02:07 +00:00
echo_remover_metrics.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
echo_remover_metrics.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
echo_remover_metrics_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
echo_remover_unittest.cc AEC3: Simplify render buffering 2018-10-15 13:31:50 +00:00
erl_estimator.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
erl_estimator.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
erl_estimator_unittest.cc AEC3: Refactor AecState 2018-10-04 15:01:18 +00:00
erle_estimator.cc AEC3: Adding a correction factor for the Erle estimation that depends on the portion of the filter that is currently in use. 2018-11-20 12:28:05 +00:00
erle_estimator.h AEC3: Adding a correction factor for the Erle estimation that depends on the portion of the filter that is currently in use. 2018-11-20 12:28:05 +00:00
erle_estimator_unittest.cc AEC3: Adding a correction factor for the Erle estimation that depends on the portion of the filter that is currently in use. 2018-11-20 12:28:05 +00:00
fft_buffer.cc Corrections of the render buffering scheme in AEC3 to ensure causality 2017-12-11 21:09:56 +00:00
fft_buffer.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
fft_data.h Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
fft_data_unittest.cc Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
filter_analyzer.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
filter_analyzer.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
frame_blocker.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
frame_blocker.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
frame_blocker_unittest.cc Make fewer copies when using StringBuilder. 2018-09-24 09:39:19 +00:00
fullband_erle_estimator.cc AEC3: Adding a correction factor for the Erle estimation that depends on the portion of the filter that is currently in use. 2018-11-20 12:28:05 +00:00
fullband_erle_estimator.h AEC3: ERLE: Allowing increases of the ERLE estimate for low render signals. 2018-09-27 10:41:10 +00:00
main_filter_update_gain.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
main_filter_update_gain.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
main_filter_update_gain_unittest.cc AEC3: Simplify render buffering 2018-10-15 13:31:50 +00:00
matched_filter.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
matched_filter.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
matched_filter_lag_aggregator.cc AEC3: Decrease latency until the delay has been detected 2018-10-31 07:29:48 +00:00
matched_filter_lag_aggregator.h AEC3: Decrease latency until the delay has been detected 2018-10-31 07:29:48 +00:00
matched_filter_lag_aggregator_unittest.cc AEC3: Parametrize the delay estimator to leverage strong echo paths 2018-09-06 23:01:58 +00:00
matched_filter_unittest.cc AEC3: Simplify render buffering 2018-10-15 13:31:50 +00:00
matrix_buffer.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
matrix_buffer.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
moving_average.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
moving_average.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
moving_average_unittest.cc AEC3: Unittests for MovingAverage 2018-06-19 12:45:10 +00:00
render_buffer.cc Remove all remaining non-test uses of std::stringstream. 2018-09-13 08:52:05 +00:00
render_buffer.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
render_buffer_unittest.cc Simplified the usage of the render buffer in AEC3 2017-12-20 14:46:36 +00:00
render_delay_buffer.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
render_delay_buffer.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
render_delay_buffer2.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
render_delay_buffer_unittest.cc AEC3: Simplify render buffering 2018-10-15 13:31:50 +00:00
render_delay_controller.cc AEC3: Decrease latency until the delay has been detected 2018-10-31 07:29:48 +00:00
render_delay_controller.h AEC3: Decrease latency until the delay has been detected 2018-10-31 07:29:48 +00:00
render_delay_controller2.cc AEC3: Corrected erroneous if-statement that always returned true 2018-11-13 11:53:47 +00:00
render_delay_controller_metrics.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
render_delay_controller_metrics.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
render_delay_controller_metrics_unittest.cc Replace rtc::Optional with absl::optional in modules/audio processing 2018-06-19 10:38:56 +00:00
render_delay_controller_unittest.cc AEC3: Simplify render buffering 2018-10-15 13:31:50 +00:00
render_reverb_model.cc AEC3: Corrected include 2018-11-06 18:57:19 +00:00
render_reverb_model.h AEC3: changes the signal used for deciding when to update the erle so the reverb render signal is now used 2018-10-22 10:30:12 +00:00
render_signal_analyzer.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
render_signal_analyzer.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
render_signal_analyzer_unittest.cc AEC3: Simplify render buffering 2018-10-15 13:31:50 +00:00
residual_echo_estimator.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
residual_echo_estimator.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
residual_echo_estimator_unittest.cc AEC3: Simplify render buffering 2018-10-15 13:31:50 +00:00
reverb_decay_estimator.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
reverb_decay_estimator.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
reverb_frequency_response.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
reverb_frequency_response.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
reverb_model.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
reverb_model.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
reverb_model_estimator.cc AEC3: Increasing the accuracy of the detection for early reverb 2018-07-30 22:34:19 +00:00
reverb_model_estimator.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
reverb_model_estimator_unittest.cc AEC3: Increasing the accuracy of the detection for early reverb 2018-07-30 22:34:19 +00:00
reverb_model_fallback.cc AEC3: Changes to how the reverberation decay is applied. 2018-06-13 14:54:04 +00:00
reverb_model_fallback.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
shadow_filter_update_gain.cc Adding a smooth transition from the startup phase parameter set in AEC3 2018-03-15 13:38:16 +00:00
shadow_filter_update_gain.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
shadow_filter_update_gain_unittest.cc AEC3: Simplify render buffering 2018-10-15 13:31:50 +00:00
signal_dependent_erle_estimator.cc AEC3: Adding a correction factor for the Erle estimation that depends on the portion of the filter that is currently in use. 2018-11-20 12:28:05 +00:00
signal_dependent_erle_estimator.h AEC3: Adding a correction factor for the Erle estimation that depends on the portion of the filter that is currently in use. 2018-11-20 12:28:05 +00:00
signal_dependent_erle_estimator_unittest.cc AEC3: Adding a correction factor for the Erle estimation that depends on the portion of the filter that is currently in use. 2018-11-20 12:28:05 +00:00
skew_estimator.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
skew_estimator.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
skew_estimator_unittest.cc Replace rtc::Optional with absl::optional in modules/audio processing 2018-06-19 10:38:56 +00:00
stationarity_estimator.cc AEC3: changes the signal used for deciding when to update the erle so the reverb render signal is now used 2018-10-22 10:30:12 +00:00
stationarity_estimator.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
subband_erle_estimator.cc AEC3: Adding a correction factor for the Erle estimation that depends on the portion of the filter that is currently in use. 2018-11-20 12:28:05 +00:00
subband_erle_estimator.h AEC3: Adding a correction factor for the Erle estimation that depends on the portion of the filter that is currently in use. 2018-11-20 12:28:05 +00:00
subtractor.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
subtractor.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
subtractor_output.cc AEC3: Changes to initial behavior and handling of saturated echo 2018-10-16 13:22:44 +00:00
subtractor_output.h AEC3: Changes to initial behavior and handling of saturated echo 2018-10-16 13:22:44 +00:00
subtractor_output_analyzer.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
subtractor_output_analyzer.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
subtractor_unittest.cc AEC3: Introduce partial adaptive filter resets at echo path changes 2018-10-18 10:46:06 +00:00
suppression_filter.cc AEC3: Computation of comfort noise gains from suppression gains 2018-11-06 16:10:52 +00:00
suppression_filter.h AEC3: Computation of comfort noise gains from suppression gains 2018-11-06 16:10:52 +00:00
suppression_filter_unittest.cc AEC3: Computation of comfort noise gains from suppression gains 2018-11-06 16:10:52 +00:00
suppression_gain.cc AEC3: Allow limiting dominant nearend to the non-initial phase 2018-10-24 07:15:49 +00:00
suppression_gain.h AEC3: Allow limiting dominant nearend to the non-initial phase 2018-10-24 07:15:49 +00:00
suppression_gain_limiter.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
suppression_gain_limiter.h AEC3: Loosen the echo removal requirements in conservative mode 2018-08-19 10:43:46 +00:00
suppression_gain_unittest.cc AEC3: Simplify render buffering 2018-10-15 13:31:50 +00:00
vector_buffer.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
vector_buffer.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
vector_math.h Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
vector_math_unittest.cc Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00