Field trial to disable the transient suppressor
This change adds the field trial "WebRTC-TransientSuppressorForcedOff" that can be used to disable the transient suppressor (removal of keyboard typing sounds). The field trial can be enabled by users via command-line or via experimentation. Bug: chromium:1186705 Change-Id: I7272df6a20fbbee24a7ba0904502c76bd775d275 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/219282 Reviewed-by: Per Åhgren <peah@webrtc.org> Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org> Cr-Commit-Position: refs/heads/master@{#34038}
This commit is contained in:
parent
a77e16ca2c
commit
a399c823bb
@ -271,7 +271,8 @@ AudioProcessingImpl::AudioProcessingImpl(
|
||||
!field_trial::IsEnabled(
|
||||
"WebRTC-ApmExperimentalMultiChannelCaptureKillSwitch"),
|
||||
EnforceSplitBandHpf(),
|
||||
MinimizeProcessingForUnusedOutput()),
|
||||
MinimizeProcessingForUnusedOutput(),
|
||||
field_trial::IsEnabled("WebRTC-TransientSuppressorForcedOff")),
|
||||
capture_(),
|
||||
capture_nonlocked_() {
|
||||
RTC_LOG(LS_INFO) << "Injected APM submodules:"
|
||||
@ -1732,7 +1733,8 @@ bool AudioProcessingImpl::UpdateActiveSubmoduleStates() {
|
||||
}
|
||||
|
||||
void AudioProcessingImpl::InitializeTransientSuppressor() {
|
||||
if (config_.transient_suppression.enabled) {
|
||||
if (config_.transient_suppression.enabled &&
|
||||
!constants_.transient_suppressor_forced_off) {
|
||||
// Attempt to create a transient suppressor, if one is not already created.
|
||||
if (!submodules_.transient_suppressor) {
|
||||
submodules_.transient_suppressor =
|
||||
|
||||
@ -422,16 +422,19 @@ class AudioProcessingImpl : public AudioProcessing {
|
||||
ApmConstants(bool multi_channel_render_support,
|
||||
bool multi_channel_capture_support,
|
||||
bool enforce_split_band_hpf,
|
||||
bool minimize_processing_for_unused_output)
|
||||
bool minimize_processing_for_unused_output,
|
||||
bool transient_suppressor_forced_off)
|
||||
: multi_channel_render_support(multi_channel_render_support),
|
||||
multi_channel_capture_support(multi_channel_capture_support),
|
||||
enforce_split_band_hpf(enforce_split_band_hpf),
|
||||
minimize_processing_for_unused_output(
|
||||
minimize_processing_for_unused_output) {}
|
||||
minimize_processing_for_unused_output),
|
||||
transient_suppressor_forced_off(transient_suppressor_forced_off) {}
|
||||
bool multi_channel_render_support;
|
||||
bool multi_channel_capture_support;
|
||||
bool enforce_split_band_hpf;
|
||||
bool minimize_processing_for_unused_output;
|
||||
bool transient_suppressor_forced_off;
|
||||
} constants_;
|
||||
|
||||
struct ApmCaptureState {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user