Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
| 5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
| 6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
| 7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
| 8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
| 9 */ | 9 */ |
| 10 | 10 |
| (...skipping 551 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 562 capture_nonlocked_.capture_processing_format = | 562 capture_nonlocked_.capture_processing_format = |
| 563 StreamConfig(capture_processing_rate); | 563 StreamConfig(capture_processing_rate); |
| 564 | 564 |
| 565 int render_processing_rate = FindNativeProcessRateToUse( | 565 int render_processing_rate = FindNativeProcessRateToUse( |
| 566 std::min(formats_.api_format.reverse_input_stream().sample_rate_hz(), | 566 std::min(formats_.api_format.reverse_input_stream().sample_rate_hz(), |
| 567 formats_.api_format.reverse_output_stream().sample_rate_hz()), | 567 formats_.api_format.reverse_output_stream().sample_rate_hz()), |
| 568 submodule_states_.CaptureMultiBandSubModulesActive() || | 568 submodule_states_.CaptureMultiBandSubModulesActive() || |
| 569 submodule_states_.RenderMultiBandSubModulesActive()); | 569 submodule_states_.RenderMultiBandSubModulesActive()); |
| 570 // TODO(aluebs): Remove this restriction once we figure out why the 3-band | 570 // TODO(aluebs): Remove this restriction once we figure out why the 3-band |
| 571 // splitting filter degrades the AEC performance. | 571 // splitting filter degrades the AEC performance. |
| 572 if (render_processing_rate > kSampleRate32kHz) { | 572 if (render_processing_rate > kSampleRate32kHz && |
| 573 !config_.echo_canceller3.enabled) { | |
|
peah-webrtc
2017/03/30 05:36:57
This change causes the splitting filter to always
| |
| 573 render_processing_rate = submodule_states_.RenderMultiBandProcessingActive() | 574 render_processing_rate = submodule_states_.RenderMultiBandProcessingActive() |
| 574 ? kSampleRate32kHz | 575 ? kSampleRate32kHz |
| 575 : kSampleRate16kHz; | 576 : kSampleRate16kHz; |
| 576 } | 577 } |
| 577 // If the forward sample rate is 8 kHz, the render stream is also processed | 578 // If the forward sample rate is 8 kHz, the render stream is also processed |
| 578 // at this rate. | 579 // at this rate. |
| 579 if (capture_nonlocked_.capture_processing_format.sample_rate_hz() == | 580 if (capture_nonlocked_.capture_processing_format.sample_rate_hz() == |
| 580 kSampleRate8kHz) { | 581 kSampleRate8kHz) { |
| 581 render_processing_rate = kSampleRate8kHz; | 582 render_processing_rate = kSampleRate8kHz; |
| 582 } else { | 583 } else { |
| (...skipping 850 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1433 #if WEBRTC_INTELLIGIBILITY_ENHANCER | 1434 #if WEBRTC_INTELLIGIBILITY_ENHANCER |
| 1434 if (capture_nonlocked_.intelligibility_enabled) { | 1435 if (capture_nonlocked_.intelligibility_enabled) { |
| 1435 public_submodules_->intelligibility_enhancer->ProcessRenderAudio( | 1436 public_submodules_->intelligibility_enhancer->ProcessRenderAudio( |
| 1436 render_buffer); | 1437 render_buffer); |
| 1437 } | 1438 } |
| 1438 #endif | 1439 #endif |
| 1439 | 1440 |
| 1440 QueueRenderAudio(render_buffer); | 1441 QueueRenderAudio(render_buffer); |
| 1441 // TODO(peah): Perform the queueing ínside QueueRenderAudiuo(). | 1442 // TODO(peah): Perform the queueing ínside QueueRenderAudiuo(). |
| 1442 if (private_submodules_->echo_canceller3) { | 1443 if (private_submodules_->echo_canceller3) { |
| 1443 if (!private_submodules_->echo_canceller3->AnalyzeRender(render_buffer)) { | 1444 private_submodules_->echo_canceller3->AnalyzeRender(render_buffer); |
| 1444 // TODO(peah): Lock and empty render queue, and try again. | |
| 1445 } | |
| 1446 } | 1445 } |
| 1447 | 1446 |
| 1448 if (submodule_states_.RenderMultiBandProcessingActive() && | 1447 if (submodule_states_.RenderMultiBandProcessingActive() && |
| 1449 SampleRateSupportsMultiBand( | 1448 SampleRateSupportsMultiBand( |
| 1450 formats_.render_processing_format.sample_rate_hz())) { | 1449 formats_.render_processing_format.sample_rate_hz())) { |
| 1451 render_buffer->MergeFrequencyBands(); | 1450 render_buffer->MergeFrequencyBands(); |
| 1452 } | 1451 } |
| 1453 | 1452 |
| 1454 return kNoError; | 1453 return kNoError; |
| 1455 } | 1454 } |
| (...skipping 533 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1989 capture_processing_format(kSampleRate16kHz), | 1988 capture_processing_format(kSampleRate16kHz), |
| 1990 split_rate(kSampleRate16kHz) {} | 1989 split_rate(kSampleRate16kHz) {} |
| 1991 | 1990 |
| 1992 AudioProcessingImpl::ApmCaptureState::~ApmCaptureState() = default; | 1991 AudioProcessingImpl::ApmCaptureState::~ApmCaptureState() = default; |
| 1993 | 1992 |
| 1994 AudioProcessingImpl::ApmRenderState::ApmRenderState() = default; | 1993 AudioProcessingImpl::ApmRenderState::ApmRenderState() = default; |
| 1995 | 1994 |
| 1996 AudioProcessingImpl::ApmRenderState::~ApmRenderState() = default; | 1995 AudioProcessingImpl::ApmRenderState::~ApmRenderState() = default; |
| 1997 | 1996 |
| 1998 } // namespace webrtc | 1997 } // namespace webrtc |
| OLD | NEW |