| Index: content/renderer/media/media_stream_audio_processor.cc
|
| diff --git a/content/renderer/media/media_stream_audio_processor.cc b/content/renderer/media/media_stream_audio_processor.cc
|
| index 5bcbb6dd9e0177190f41451534486957f6f10cae..b0212b79d6a0c132d8c05c7da249ab75a4d661aa 100644
|
| --- a/content/renderer/media/media_stream_audio_processor.cc
|
| +++ b/content/renderer/media/media_stream_audio_processor.cc
|
| @@ -252,6 +252,9 @@ void MediaStreamAudioProcessor::InitializeAudioProcessingModule(
|
|
|
| const bool enable_ns = GetPropertyFromConstraints(
|
| &native_constraints, MediaConstraintsInterface::kNoiseSuppression);
|
| + const bool enable_experimental_ns = GetPropertyFromConstraints(
|
| + &native_constraints,
|
| + MediaConstraintsInterface::kExperimentalNoiseSuppression);
|
| const bool enable_high_pass_filter = GetPropertyFromConstraints(
|
| &native_constraints, MediaConstraintsInterface::kHighpassFilter);
|
|
|
| @@ -261,7 +264,7 @@ void MediaStreamAudioProcessor::InitializeAudioProcessingModule(
|
| // Return immediately if no audio processing component is enabled.
|
| if (!enable_aec && !enable_experimental_aec && !enable_ns &&
|
| !enable_high_pass_filter && !enable_typing_detection && !enable_agc &&
|
| - !audio_mirroring_) {
|
| + !audio_mirroring_ && !enable_experimental_ns) {
|
| return;
|
| }
|
|
|
| @@ -281,6 +284,9 @@ void MediaStreamAudioProcessor::InitializeAudioProcessingModule(
|
| if (enable_ns)
|
| EnableNoiseSuppression(audio_processing_.get());
|
|
|
| + if (enable_experimental_ns)
|
| + EnableExperimentalNoiseSuppression(audio_processing_.get());
|
| +
|
| if (enable_high_pass_filter)
|
| EnableHighPassFilter(audio_processing_.get());
|
|
|
| @@ -390,9 +396,13 @@ int MediaStreamAudioProcessor::ProcessData(webrtc::AudioFrame* audio_frame,
|
| }
|
|
|
| audio_processing_->set_stream_delay_ms(total_delay_ms);
|
| +
|
| webrtc::GainControl* agc = audio_processing_->gain_control();
|
| int err = agc->set_stream_analog_level(volume);
|
| DCHECK_EQ(err, 0) << "set_stream_analog_level() error: " << err;
|
| +
|
| + audio_processing_->set_stream_key_pressed(key_pressed);
|
| +
|
| err = audio_processing_->ProcessStream(audio_frame);
|
| DCHECK_EQ(err, 0) << "ProcessStream() error: " << err;
|
|
|
|
|