AGC2: SIMD allowed config flags to field trials
Bug: webrtc:7494
Change-Id: I41fa05d2ef6d969750f3d4c1e40ecbcd30293b5a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/233741
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35144}
diff --git a/modules/audio_processing/include/audio_processing.cc b/modules/audio_processing/include/audio_processing.cc
index 71d0938..f57ace7 100644
--- a/modules/audio_processing/include/audio_processing.cc
+++ b/modules/audio_processing/include/audio_processing.cc
@@ -96,9 +96,7 @@
adjacent_speech_frames_threshold ==
rhs.adjacent_speech_frames_threshold &&
max_gain_change_db_per_second == rhs.max_gain_change_db_per_second &&
- max_output_noise_level_dbfs == rhs.max_output_noise_level_dbfs &&
- sse2_allowed == rhs.sse2_allowed && avx2_allowed == rhs.avx2_allowed &&
- neon_allowed == rhs.neon_allowed;
+ max_output_noise_level_dbfs == rhs.max_output_noise_level_dbfs;
}
bool Agc2Config::operator==(const Agc2Config& rhs) const {
@@ -123,101 +121,98 @@
std::string AudioProcessing::Config::ToString() const {
char buf[2048];
rtc::SimpleStringBuilder builder(buf);
- builder
- << "AudioProcessing::Config{ "
- "pipeline: { "
- "maximum_internal_processing_rate: "
- << pipeline.maximum_internal_processing_rate
- << ", multi_channel_render: " << pipeline.multi_channel_render
- << ", multi_channel_capture: " << pipeline.multi_channel_capture
- << " }, pre_amplifier: { enabled: " << pre_amplifier.enabled
- << ", fixed_gain_factor: " << pre_amplifier.fixed_gain_factor
- << " },capture_level_adjustment: { enabled: "
- << capture_level_adjustment.enabled
- << ", pre_gain_factor: " << capture_level_adjustment.pre_gain_factor
- << ", post_gain_factor: " << capture_level_adjustment.post_gain_factor
- << ", analog_mic_gain_emulation: { enabled: "
- << capture_level_adjustment.analog_mic_gain_emulation.enabled
- << ", initial_level: "
- << capture_level_adjustment.analog_mic_gain_emulation.initial_level
- << " }}, high_pass_filter: { enabled: " << high_pass_filter.enabled
- << " }, echo_canceller: { enabled: " << echo_canceller.enabled
- << ", mobile_mode: " << echo_canceller.mobile_mode
- << ", enforce_high_pass_filtering: "
- << echo_canceller.enforce_high_pass_filtering
- << " }, noise_suppression: { enabled: " << noise_suppression.enabled
- << ", level: " << NoiseSuppressionLevelToString(noise_suppression.level)
- << " }, transient_suppression: { enabled: "
- << transient_suppression.enabled
- << " }, voice_detection: { enabled: " << voice_detection.enabled
- << " }, gain_controller1: { enabled: " << gain_controller1.enabled
- << ", mode: " << GainController1ModeToString(gain_controller1.mode)
- << ", target_level_dbfs: " << gain_controller1.target_level_dbfs
- << ", compression_gain_db: " << gain_controller1.compression_gain_db
- << ", enable_limiter: " << gain_controller1.enable_limiter
- << ", analog_level_minimum: " << gain_controller1.analog_level_minimum
- << ", analog_level_maximum: " << gain_controller1.analog_level_maximum
- << ", analog_gain_controller { enabled: "
- << gain_controller1.analog_gain_controller.enabled
- << ", startup_min_volume: "
- << gain_controller1.analog_gain_controller.startup_min_volume
- << ", clipped_level_min: "
- << gain_controller1.analog_gain_controller.clipped_level_min
- << ", enable_digital_adaptive: "
- << gain_controller1.analog_gain_controller.enable_digital_adaptive
- << ", clipped_level_step: "
- << gain_controller1.analog_gain_controller.clipped_level_step
- << ", clipped_ratio_threshold: "
- << gain_controller1.analog_gain_controller.clipped_ratio_threshold
- << ", clipped_wait_frames: "
- << gain_controller1.analog_gain_controller.clipped_wait_frames
- << ", clipping_predictor: { enabled: "
- << gain_controller1.analog_gain_controller.clipping_predictor.enabled
- << ", mode: "
- << gain_controller1.analog_gain_controller.clipping_predictor.mode
- << ", window_length: "
- << gain_controller1.analog_gain_controller.clipping_predictor
- .window_length
- << ", reference_window_length: "
- << gain_controller1.analog_gain_controller.clipping_predictor
- .reference_window_length
- << ", reference_window_delay: "
- << gain_controller1.analog_gain_controller.clipping_predictor
- .reference_window_delay
- << ", clipping_threshold: "
- << gain_controller1.analog_gain_controller.clipping_predictor
- .clipping_threshold
- << ", crest_factor_margin: "
- << gain_controller1.analog_gain_controller.clipping_predictor
- .crest_factor_margin
- << ", use_predicted_step: "
- << gain_controller1.analog_gain_controller.clipping_predictor
- .use_predicted_step
- << " }}}, gain_controller2: { enabled: " << gain_controller2.enabled
- << ", fixed_digital: { gain_db: "
- << gain_controller2.fixed_digital.gain_db
- << " }, adaptive_digital: { enabled: "
- << gain_controller2.adaptive_digital.enabled
- << ", dry_run: " << gain_controller2.adaptive_digital.dry_run
- << ", headroom_db: " << gain_controller2.adaptive_digital.headroom_db
- << ", max_gain_db: " << gain_controller2.adaptive_digital.max_gain_db
- << ", initial_gain_db: "
- << gain_controller2.adaptive_digital.initial_gain_db
- << ", vad_reset_period_ms: "
- << gain_controller2.adaptive_digital.vad_reset_period_ms
- << ", adjacent_speech_frames_threshold: "
- << gain_controller2.adaptive_digital.adjacent_speech_frames_threshold
- << ", max_gain_change_db_per_second: "
- << gain_controller2.adaptive_digital.max_gain_change_db_per_second
- << ", max_output_noise_level_dbfs: "
- << gain_controller2.adaptive_digital.max_output_noise_level_dbfs
- << ", sse2_allowed: " << gain_controller2.adaptive_digital.sse2_allowed
- << ", avx2_allowed: " << gain_controller2.adaptive_digital.avx2_allowed
- << ", neon_allowed: " << gain_controller2.adaptive_digital.neon_allowed
- << "}}, residual_echo_detector: { enabled: "
- << residual_echo_detector.enabled
- << " }, level_estimation: { enabled: " << level_estimation.enabled
- << " }}";
+ builder << "AudioProcessing::Config{ "
+ "pipeline: { "
+ "maximum_internal_processing_rate: "
+ << pipeline.maximum_internal_processing_rate
+ << ", multi_channel_render: " << pipeline.multi_channel_render
+ << ", multi_channel_capture: " << pipeline.multi_channel_capture
+ << " }, pre_amplifier: { enabled: " << pre_amplifier.enabled
+ << ", fixed_gain_factor: " << pre_amplifier.fixed_gain_factor
+ << " },capture_level_adjustment: { enabled: "
+ << capture_level_adjustment.enabled
+ << ", pre_gain_factor: " << capture_level_adjustment.pre_gain_factor
+ << ", post_gain_factor: " << capture_level_adjustment.post_gain_factor
+ << ", analog_mic_gain_emulation: { enabled: "
+ << capture_level_adjustment.analog_mic_gain_emulation.enabled
+ << ", initial_level: "
+ << capture_level_adjustment.analog_mic_gain_emulation.initial_level
+ << " }}, high_pass_filter: { enabled: " << high_pass_filter.enabled
+ << " }, echo_canceller: { enabled: " << echo_canceller.enabled
+ << ", mobile_mode: " << echo_canceller.mobile_mode
+ << ", enforce_high_pass_filtering: "
+ << echo_canceller.enforce_high_pass_filtering
+ << " }, noise_suppression: { enabled: " << noise_suppression.enabled
+ << ", level: "
+ << NoiseSuppressionLevelToString(noise_suppression.level)
+ << " }, transient_suppression: { enabled: "
+ << transient_suppression.enabled
+ << " }, voice_detection: { enabled: " << voice_detection.enabled
+ << " }, gain_controller1: { enabled: " << gain_controller1.enabled
+ << ", mode: " << GainController1ModeToString(gain_controller1.mode)
+ << ", target_level_dbfs: " << gain_controller1.target_level_dbfs
+ << ", compression_gain_db: " << gain_controller1.compression_gain_db
+ << ", enable_limiter: " << gain_controller1.enable_limiter
+ << ", analog_level_minimum: " << gain_controller1.analog_level_minimum
+ << ", analog_level_maximum: " << gain_controller1.analog_level_maximum
+ << ", analog_gain_controller { enabled: "
+ << gain_controller1.analog_gain_controller.enabled
+ << ", startup_min_volume: "
+ << gain_controller1.analog_gain_controller.startup_min_volume
+ << ", clipped_level_min: "
+ << gain_controller1.analog_gain_controller.clipped_level_min
+ << ", enable_digital_adaptive: "
+ << gain_controller1.analog_gain_controller.enable_digital_adaptive
+ << ", clipped_level_step: "
+ << gain_controller1.analog_gain_controller.clipped_level_step
+ << ", clipped_ratio_threshold: "
+ << gain_controller1.analog_gain_controller.clipped_ratio_threshold
+ << ", clipped_wait_frames: "
+ << gain_controller1.analog_gain_controller.clipped_wait_frames
+ << ", clipping_predictor: { enabled: "
+ << gain_controller1.analog_gain_controller.clipping_predictor.enabled
+ << ", mode: "
+ << gain_controller1.analog_gain_controller.clipping_predictor.mode
+ << ", window_length: "
+ << gain_controller1.analog_gain_controller.clipping_predictor
+ .window_length
+ << ", reference_window_length: "
+ << gain_controller1.analog_gain_controller.clipping_predictor
+ .reference_window_length
+ << ", reference_window_delay: "
+ << gain_controller1.analog_gain_controller.clipping_predictor
+ .reference_window_delay
+ << ", clipping_threshold: "
+ << gain_controller1.analog_gain_controller.clipping_predictor
+ .clipping_threshold
+ << ", crest_factor_margin: "
+ << gain_controller1.analog_gain_controller.clipping_predictor
+ .crest_factor_margin
+ << ", use_predicted_step: "
+ << gain_controller1.analog_gain_controller.clipping_predictor
+ .use_predicted_step
+ << " }}}, gain_controller2: { enabled: " << gain_controller2.enabled
+ << ", fixed_digital: { gain_db: "
+ << gain_controller2.fixed_digital.gain_db
+ << " }, adaptive_digital: { enabled: "
+ << gain_controller2.adaptive_digital.enabled
+ << ", dry_run: " << gain_controller2.adaptive_digital.dry_run
+ << ", headroom_db: " << gain_controller2.adaptive_digital.headroom_db
+ << ", max_gain_db: " << gain_controller2.adaptive_digital.max_gain_db
+ << ", initial_gain_db: "
+ << gain_controller2.adaptive_digital.initial_gain_db
+ << ", vad_reset_period_ms: "
+ << gain_controller2.adaptive_digital.vad_reset_period_ms
+ << ", adjacent_speech_frames_threshold: "
+ << gain_controller2.adaptive_digital.adjacent_speech_frames_threshold
+ << ", max_gain_change_db_per_second: "
+ << gain_controller2.adaptive_digital.max_gain_change_db_per_second
+ << ", max_output_noise_level_dbfs: "
+ << gain_controller2.adaptive_digital.max_output_noise_level_dbfs
+ << "}}, residual_echo_detector: { enabled: "
+ << residual_echo_detector.enabled
+ << " }, level_estimation: { enabled: " << level_estimation.enabled
+ << " }}";
return builder.str();
}