webrtc/modules/audio_processing/aec3
Per Åhgren 8ee1ec82e4 Allowing reduced computations in the AEC3 when the output is not used
This CL adds functionality in AEC3 that allows the computational
complexity to be reduced when the output of APM is not used.

Bug: b/177830919
Change-Id: I08121364bf966f34311f54ffa5affbfd8b4db1e2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/211341
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33476}
2021-03-16 09:16:32 +00:00
..
mock Allowing reduced computations in the AEC3 when the output is not used 2021-03-16 09:16:32 +00:00
adaptive_fir_filter_avx2.cc aec3: Support AVX2/FMA intrinsics in AEC3 2020-09-01 11:58:16 +00:00
adaptive_fir_filter_erl_avx2.cc aec3: Support AVX2/FMA intrinsics in AEC3 2020-09-01 11:58:16 +00:00
adaptive_fir_filter_erl_unittest.cc Refactor cpu_features_wrapper.h functions from C to C++. 2020-09-07 08:44:24 +00:00
adaptive_fir_filter_erl.cc aec3: Support AVX2/FMA intrinsics in AEC3 2020-09-01 11:58:16 +00:00
adaptive_fir_filter_erl.h aec3: Support AVX2/FMA intrinsics in AEC3 2020-09-01 11:58:16 +00:00
adaptive_fir_filter_unittest.cc Refactor cpu_features_wrapper.h functions from C to C++. 2020-09-07 08:44:24 +00:00
adaptive_fir_filter.cc aec3: Support AVX2/FMA intrinsics in AEC3 2020-09-01 11:58:16 +00:00
adaptive_fir_filter.h aec3: Support AVX2/FMA intrinsics in AEC3 2020-09-01 11:58:16 +00:00
aec3_common.cc Refactor cpu_features_wrapper.h functions from C to C++. 2020-09-07 08:44:24 +00:00
aec3_common.h AEC3: Stop reporting obsolete metrics 2020-10-20 11:54:48 +00:00
aec3_fft_unittest.cc Rename several more tests that use EXPECT_DEATH to *DeathTest. 2020-05-18 16:10:04 +00:00
aec3_fft.cc Refactor cpu_features_wrapper.h functions from C to C++. 2020-09-07 08:44:24 +00:00
aec3_fft.h Reland "Change to using the new Ooura constructor" 2020-06-03 12:27:14 +00:00
aec_state_unittest.cc Remove unused enums and members 2020-09-30 14:34:44 +00:00
aec_state.cc AEC3: Prevent diverging coarse filter from influencing the refined filter 2020-12-08 15:05:23 +00:00
aec_state.h AEC3: Re-add delay headroom when precise alignment is needed 2020-10-06 07:54:08 +00:00
alignment_mixer_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
alignment_mixer.cc AEC3: Add signal dependent mixing before alignment 2019-12-03 11:30:48 +00:00
alignment_mixer.h AEC3: Add signal dependent mixing before alignment 2019-12-03 11:30:48 +00:00
api_call_jitter_metrics_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
api_call_jitter_metrics.cc AEC3: Add metrics for API call jitter 2018-11-27 19:52:08 +00:00
api_call_jitter_metrics.h AEC3: Add metrics for API call jitter 2018-11-27 19:52:08 +00:00
block_buffer.cc Rename VectorBuffer->SpectrumBuffer, MatrixBuffer->BlockBuffer, BlockBuffer->Aec2BlockBuffer 2019-09-05 10:53:24 +00:00
block_buffer.h Remove completed TODOs 2019-09-06 14:53:11 +00:00
block_delay_buffer_unittest.cc AEC3: Added multi-channel support for the capture delay functionality 2020-01-28 15:39:26 +00:00
block_delay_buffer.cc AEC3: Added multi-channel support for the capture delay functionality 2020-01-28 15:39:26 +00:00
block_delay_buffer.h AEC3: Added multi-channel support for the capture delay functionality 2020-01-28 15:39:26 +00:00
block_framer_unittest.cc Rename several more tests that use EXPECT_DEATH to *DeathTest. 2020-05-18 16:10:04 +00:00
block_framer.cc Reland "Reland "Add core multi-channel pipeline in AEC3 This CL adds basic the basic pipeline to support multi-channel processing in AEC3."" 2019-09-03 06:12:32 +00:00
block_framer.h Reland "Reland "Add core multi-channel pipeline in AEC3 This CL adds basic the basic pipeline to support multi-channel processing in AEC3."" 2019-09-03 06:12:32 +00:00
block_processor_metrics_unittest.cc Format almost everything. 2019-07-08 13:45:15 +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 (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
block_processor_unittest.cc AEC3: Fix render delay buffer alignment issue at call start 2020-07-27 15:19:58 +00:00
block_processor.cc Allowing reduced computations in the AEC3 when the output is not used 2021-03-16 09:16:32 +00:00
block_processor.h Allowing reduced computations in the AEC3 when the output is not used 2021-03-16 09:16:32 +00:00
BUILD.gn Remove from chromium build targets that are not compatible with it. 2021-02-01 13:46:19 +00:00
clockdrift_detector_unittest.cc AEC3: Clockdrift detection 2018-11-22 16:02:44 +00:00
clockdrift_detector.cc AEC3: Clockdrift detection 2018-11-22 16:02:44 +00:00
clockdrift_detector.h IWYU: size_t is defined in stddef.h 2020-06-03 08:43:50 +00:00
coarse_filter_update_gain_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
coarse_filter_update_gain.cc AEC3: Rename shadow filter 2020-03-20 15:26:14 +00:00
coarse_filter_update_gain.h AEC3: Rename shadow filter 2020-03-20 15:26:14 +00:00
comfort_noise_generator_unittest.cc AEC3: Added parametrization of the comfort noise floor 2020-03-25 08:56:17 +00:00
comfort_noise_generator.cc AEC3: Added parametrization of the comfort noise floor 2020-03-25 08:56:17 +00:00
comfort_noise_generator.h AEC3: Added parametrization of the comfort noise floor 2020-03-25 08:56:17 +00:00
decimator_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
decimator.cc AEC3: Add signal dependent mixing before alignment 2019-12-03 11:30:48 +00:00
decimator.h AEC3: Add signal dependent mixing before alignment 2019-12-03 11:30:48 +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
dominant_nearend_detector.cc AEC3: Sub-band nearend detector 2019-11-25 16:26:49 +00:00
dominant_nearend_detector.h AEC3: Sub-band nearend detector 2019-11-25 16:26:49 +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 Format almost everything. 2019-07-08 13:45:15 +00:00
echo_audibility.cc AEC3: Correct the number of render channels in the echo audibility code 2019-12-02 13:13:11 +00:00
echo_audibility.h AEC3: Made EchoAudibility multichannel 2019-10-15 09:25:46 +00:00
echo_canceller3_unittest.cc Allowing reduced computations in the AEC3 when the output is not used 2021-03-16 09:16:32 +00:00
echo_canceller3.cc Allowing reduced computations in the AEC3 when the output is not used 2021-03-16 09:16:32 +00:00
echo_canceller3.h Enabling a safe fall-back functionality for overruns in the runtime settings 2021-03-03 12:06:54 +00:00
echo_path_delay_estimator_unittest.cc Rename EchoPathDelayEstimator to EchoPathDelayEstimatorDeathTest. 2020-05-18 14:27:14 +00:00
echo_path_delay_estimator.cc AEC3: Add signal dependent mixing before alignment 2019-12-03 11:30:48 +00:00
echo_path_delay_estimator.h AEC3: Add signal dependent mixing before alignment 2019-12-03 11:30:48 +00:00
echo_path_variability_unittest.cc Format almost everything. 2019-07-08 13:45:15 +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 Remove unused enums and members 2020-09-30 14:34:44 +00:00
echo_remover_metrics_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
echo_remover_metrics.cc AEC3: Stop reporting obsolete metrics 2020-10-20 11:54:48 +00:00
echo_remover_metrics.h AEC3: Stop reporting obsolete metrics 2020-10-20 11:54:48 +00:00
echo_remover_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
echo_remover.cc Allowing reduced computations in the AEC3 when the output is not used 2021-03-16 09:16:32 +00:00
echo_remover.h Allowing reduced computations in the AEC3 when the output is not used 2021-03-16 09:16:32 +00:00
erl_estimator_unittest.cc Add parameterization for three multi channel AEC3 unit tests 2020-01-24 12:26:46 +00:00
erl_estimator.cc AEC3: Multi channel ERL estimator 2019-10-18 16:03:46 +00:00
erl_estimator.h AEC3: Multi channel ERL estimator 2019-10-18 16:03:46 +00:00
erle_estimator_unittest.cc Erle metric: avoid the decreasing of the metric when there is no render activity. 2020-12-09 11:48:11 +00:00
erle_estimator.cc AEC3: Add multichannel support in the ERLE estimation 2019-10-17 17:34:18 +00:00
erle_estimator.h AEC3: Add multichannel support in the ERLE estimation 2019-10-17 17:34:18 +00:00
fft_buffer.cc Add multi-channel to FftBuffer 2019-09-05 14:10:04 +00:00
fft_buffer.h Add multi-channel to FftBuffer 2019-09-05 14:10:04 +00:00
fft_data_avx2.cc aec3: Support AVX2/FMA intrinsics in AEC3 2020-09-01 11:58:16 +00:00
fft_data_unittest.cc Refactor cpu_features_wrapper.h functions from C to C++. 2020-09-07 08:44:24 +00:00
fft_data.h aec3: Support AVX2/FMA intrinsics in AEC3 2020-09-01 11:58:16 +00:00
filter_analyzer_unittest.cc AEC3: General cleanup after multichannel changes 2019-10-18 07:43:49 +00:00
filter_analyzer.cc Add explicit initialization for the FilterAnalyzer in AEC3 2020-09-10 10:50:43 +00:00
filter_analyzer.h Add explicit initialization for the FilterAnalyzer in AEC3 2020-09-10 10:50:43 +00:00
frame_blocker_unittest.cc Rename several more tests that use EXPECT_DEATH to *DeathTest. 2020-05-18 16:10:04 +00:00
frame_blocker.cc Reland "Reland "Add core multi-channel pipeline in AEC3 This CL adds basic the basic pipeline to support multi-channel processing in AEC3."" 2019-09-03 06:12:32 +00:00
frame_blocker.h Reland "Reland "Add core multi-channel pipeline in AEC3 This CL adds basic the basic pipeline to support multi-channel processing in AEC3."" 2019-09-03 06:12:32 +00:00
fullband_erle_estimator.cc Fixing the bounds for the max and min erle in the erle instantaneous estimation. 2020-12-15 14:29:52 +00:00
fullband_erle_estimator.h Erle metric: avoid the decreasing of the metric when there is no render activity. 2020-12-09 11:48:11 +00:00
matched_filter_avx2.cc aec3: Support AVX2/FMA intrinsics in AEC3 2020-09-01 11:58:16 +00:00
matched_filter_lag_aggregator_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
matched_filter_lag_aggregator.cc Dump histogram data in AEC3 delay estimator 2019-02-11 14:13:38 +00:00
matched_filter_lag_aggregator.h Delete macros RTC_DISALLOW_ASSIGN and RTC_DISALLOW_IMPLICIT_CONSTRUCTORS 2020-09-29 10:19:20 +00:00
matched_filter_unittest.cc Refactor cpu_features_wrapper.h functions from C to C++. 2020-09-07 08:44:24 +00:00
matched_filter.cc aec3: Support AVX2/FMA intrinsics in AEC3 2020-09-01 11:58:16 +00:00
matched_filter.h Delete macros RTC_DISALLOW_ASSIGN and RTC_DISALLOW_IMPLICIT_CONSTRUCTORS 2020-09-29 10:19:20 +00:00
moving_average_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
moving_average.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
moving_average.h Format almost everything. 2019-07-08 13:45:15 +00:00
nearend_detector.h AEC3: Sub-band nearend detector 2019-11-25 16:26:49 +00:00
refined_filter_update_gain_unittest.cc AEC3: Prevent diverging coarse filter from influencing the refined filter 2020-12-08 15:05:23 +00:00
refined_filter_update_gain.cc AEC3: Prevent diverging coarse filter from influencing the refined filter 2020-12-08 15:05:23 +00:00
refined_filter_update_gain.h AEC3: Prevent diverging coarse filter from influencing the refined filter 2020-12-08 15:05:23 +00:00
render_buffer_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
render_buffer.cc Rename VectorBuffer->SpectrumBuffer, MatrixBuffer->BlockBuffer, BlockBuffer->Aec2BlockBuffer 2019-09-05 10:53:24 +00:00
render_buffer.h Delete macros RTC_DISALLOW_ASSIGN and RTC_DISALLOW_IMPLICIT_CONSTRUCTORS 2020-09-29 10:19:20 +00:00
render_delay_buffer_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
render_delay_buffer.cc AEC3: Re-add delay headroom when precise alignment is needed 2020-10-06 07:54:08 +00:00
render_delay_buffer.h AEC3: Fix render delay buffer alignment issue at call start 2020-07-27 15:19:58 +00:00
render_delay_controller_metrics_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
render_delay_controller_metrics.cc AEC3: Clockdrift detection 2018-11-22 16:02:44 +00:00
render_delay_controller_metrics.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
render_delay_controller_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
render_delay_controller.cc Delete macros RTC_DISALLOW_ASSIGN and RTC_DISALLOW_IMPLICIT_CONSTRUCTORS 2020-09-29 10:19:20 +00:00
render_delay_controller.h AEC3: Add signal dependent mixing before alignment 2019-12-03 11:30:48 +00:00
render_signal_analyzer_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
render_signal_analyzer.cc AEC3: Rename main filter 2020-03-20 13:25:01 +00:00
render_signal_analyzer.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
residual_echo_estimator_unittest.cc AEC3: Rename main filter 2020-03-20 13:25:01 +00:00
residual_echo_estimator.cc AEC3: Prevent transparent mode from leaking low volume echo 2020-10-21 11:19:55 +00:00
residual_echo_estimator.h AEC3: Move option for reverb model in nonlinaer mode into AEC3 config 2020-10-02 20:27:47 +00:00
reverb_decay_estimator.cc AEC3: Rename main filter 2020-03-20 13:25:01 +00:00
reverb_decay_estimator.h AEC3: Ensure that the data size in the reverb computer is not fixed 2019-12-19 16:35:56 +00:00
reverb_frequency_response.cc Format almost everything. 2019-07-08 13:45:15 +00:00
reverb_frequency_response.h AEC3: Remove remaining kill-switches 2019-01-29 10:31:45 +00:00
reverb_model_estimator_unittest.cc AEC3: Rename main filter 2020-03-20 13:25:01 +00:00
reverb_model_estimator.cc AEC3: Add support for multiple channels to the reverb modelling 2019-10-11 21:49:58 +00:00
reverb_model_estimator.h AEC3: Add support for multiple channels to the reverb modelling 2019-10-11 21:49:58 +00:00
reverb_model.cc AEC3: Add multichannel support to the residual echo estimator 2019-10-08 11:18:35 +00:00
reverb_model.h AEC3: Add multichannel support to the residual echo estimator 2019-10-08 11:18:35 +00:00
signal_dependent_erle_estimator_unittest.cc AEC3: Rename main filter 2020-03-20 13:25:01 +00:00
signal_dependent_erle_estimator.cc AEC3: Rename main filter 2020-03-20 13:25:01 +00:00
signal_dependent_erle_estimator.h AEC3: Add multichannel support in the ERLE estimation 2019-10-17 17:34:18 +00:00
spectrum_buffer.cc AEC3: Update SpectrumBuffer API 2019-10-18 07:01:42 +00:00
spectrum_buffer.h AEC3: Update SpectrumBuffer API 2019-10-18 07:01:42 +00:00
stationarity_estimator.cc AEC3: Update SpectrumBuffer API 2019-10-18 07:01:42 +00:00
stationarity_estimator.h AEC3: Update SpectrumBuffer API 2019-10-18 07:01:42 +00:00
subband_erle_estimator.cc AEC3: Add multichannel support in the ERLE estimation 2019-10-17 17:34:18 +00:00
subband_erle_estimator.h AEC3: Add multichannel support in the ERLE estimation 2019-10-17 17:34:18 +00:00
subband_nearend_detector.cc AEC3: Sub-band nearend detector 2019-11-25 16:26:49 +00:00
subband_nearend_detector.h AEC3: Sub-band nearend detector 2019-11-25 16:26:49 +00:00
subtractor_output_analyzer.cc AEC3: Prevent transparent mode from leaking low volume echo 2020-10-21 11:19:55 +00:00
subtractor_output_analyzer.h AEC3: Prevent transparent mode from leaking low volume echo 2020-10-21 11:19:55 +00:00
subtractor_output.cc AEC3: Rename shadow filter 2020-03-20 15:26:14 +00:00
subtractor_output.h AEC3: Rename shadow filter 2020-03-20 15:26:14 +00:00
subtractor_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
subtractor.cc AEC3: Prevent diverging coarse filter from influencing the refined filter 2020-12-08 15:05:23 +00:00
subtractor.h AEC3: Prevent diverging coarse filter from influencing the refined filter 2020-12-08 15:05:23 +00:00
suppression_filter_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
suppression_filter.cc AEC3: Suppression filter handles multiple channels 2019-09-24 13:50:04 +00:00
suppression_filter.h Remove unused instance of Ooura FFT 2020-06-03 00:33:54 +00:00
suppression_gain_unittest.cc Increased high frequency transparency 2020-11-02 10:42:10 +00:00
suppression_gain.cc Increased high frequency transparency 2020-11-02 10:42:10 +00:00
suppression_gain.h Increased high frequency transparency 2020-11-02 10:42:10 +00:00
transparent_mode.cc Switch to enable the HMM transparent mode classifier 2021-01-19 16:26:11 +00:00
transparent_mode.h AEC3: Prevent transparent mode from leaking low volume echo 2020-10-21 11:19:55 +00:00
vector_math_avx2.cc aec3: Support AVX2/FMA intrinsics in AEC3 2020-09-01 11:58:16 +00:00
vector_math_unittest.cc Refactor cpu_features_wrapper.h functions from C to C++. 2020-09-07 08:44:24 +00:00
vector_math.h aec3: Support AVX2/FMA intrinsics in AEC3 2020-09-01 11:58:16 +00:00