APM: remove LevelEstimator

Only used in unit tests and a duplication of what `capture_output_rms_`
already does.

This CL also removes `AudioProcessingStats::output_rms_dbfs`, which is
now unused.

Bug: webrtc:5298
Fix: chromium:1261339
Change-Id: I6e583c11d4abb58444c440509a8495a7f5ebc589
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/235664
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35246}
This commit is contained in:
Alessio Bazzica
2021-10-19 13:32:02 +02:00
committed by WebRTC LUCI CQ
parent 00c62eddf4
commit 183c64ce19
16 changed files with 3 additions and 299 deletions

View File

@ -418,7 +418,6 @@ void AudioProcessingImpl::InitializeLocked() {
InitializePostProcessor();
InitializePreProcessor();
InitializeCaptureLevelsAdjuster();
InitializeLevelEstimator();
if (aec_dump_) {
aec_dump_->WriteInitMessage(formats_.api_format, rtc::TimeUTCMillis());
@ -596,8 +595,6 @@ void AudioProcessingImpl::ApplyConfig(const AudioProcessing::Config& config) {
InitializeCaptureLevelsAdjuster();
}
InitializeLevelEstimator();
if (voice_detection_config_changed) {
InitializeVoiceDetector();
}
@ -1279,7 +1276,6 @@ int AudioProcessingImpl::ProcessCaptureStreamLocked() {
capture_buffer->MergeFrequencyBands();
}
capture_.stats.output_rms_dbfs = absl::nullopt;
if (capture_.capture_output_used) {
if (capture_.capture_fullband_audio) {
const auto& ec = submodules_.echo_controller;
@ -1332,13 +1328,6 @@ int AudioProcessingImpl::ProcessCaptureStreamLocked() {
submodules_.capture_post_processor->Process(capture_buffer);
}
if (submodules_.output_level_estimator) {
// The level estimator operates on the recombined data.
submodules_.output_level_estimator->ProcessStream(*capture_buffer);
capture_.stats.output_rms_dbfs =
submodules_.output_level_estimator->RMS();
}
capture_output_rms_.Analyze(rtc::ArrayView<const float>(
capture_buffer->channels_const()[0],
capture_nonlocked_.capture_processing_format.num_frames()));
@ -2014,16 +2003,6 @@ void AudioProcessingImpl::InitializeAnalyzer() {
}
}
void AudioProcessingImpl::InitializeLevelEstimator() {
if (!config_.level_estimation.enabled) {
submodules_.output_level_estimator.reset();
return;
}
if (!submodules_.output_level_estimator) {
submodules_.output_level_estimator = std::make_unique<LevelEstimator>();
}
}
void AudioProcessingImpl::InitializePostProcessor() {
if (submodules_.capture_post_processor) {
submodules_.capture_post_processor->Initialize(