OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2017 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 83 matching lines...) Loading... |
94 active_render_counter_(kActiveRenderCounterInitial) { | 94 active_render_counter_(kActiveRenderCounterInitial) { |
95 bands_with_reliable_filter_.fill(false); | 95 bands_with_reliable_filter_.fill(false); |
96 filter_estimate_strength_.fill(0.f); | 96 filter_estimate_strength_.fill(0.f); |
97 } | 97 } |
98 | 98 |
99 AecState::~AecState() = default; | 99 AecState::~AecState() = default; |
100 | 100 |
101 void AecState::Update(const std::vector<std::array<float, kFftLengthBy2Plus1>>& | 101 void AecState::Update(const std::vector<std::array<float, kFftLengthBy2Plus1>>& |
102 filter_frequency_response, | 102 filter_frequency_response, |
103 const rtc::Optional<size_t>& external_delay_samples, | 103 const rtc::Optional<size_t>& external_delay_samples, |
104 const FftBuffer& X_buffer, | 104 const RenderBuffer& X_buffer, |
105 const std::array<float, kFftLengthBy2Plus1>& E2_main, | 105 const std::array<float, kFftLengthBy2Plus1>& E2_main, |
106 const std::array<float, kFftLengthBy2Plus1>& E2_shadow, | 106 const std::array<float, kFftLengthBy2Plus1>& E2_shadow, |
107 const std::array<float, kFftLengthBy2Plus1>& Y2, | 107 const std::array<float, kFftLengthBy2Plus1>& Y2, |
108 rtc::ArrayView<const float> x, | 108 rtc::ArrayView<const float> x, |
109 const EchoPathVariability& echo_path_variability, | 109 const EchoPathVariability& echo_path_variability, |
110 bool echo_leakage_detected) { | 110 bool echo_leakage_detected) { |
111 filter_length_ = filter_frequency_response.size(); | 111 filter_length_ = filter_frequency_response.size(); |
112 AnalyzeFilter(filter_frequency_response, &bands_with_reliable_filter_, | 112 AnalyzeFilter(filter_frequency_response, &bands_with_reliable_filter_, |
113 &filter_estimate_strength_, &filter_delay_); | 113 &filter_estimate_strength_, &filter_delay_); |
114 // Compute the externally provided delay in partitions. The truncation is | 114 // Compute the externally provided delay in partitions. The truncation is |
(...skipping 41 matching lines...) Loading... |
156 [](float a) { return a <= 10.f; }); | 156 [](float a) { return a <= 10.f; }); |
157 headset_detected_ = low_erl_band_count > 20 && noisy_band_count > 20; | 157 headset_detected_ = low_erl_band_count > 20 && noisy_band_count > 20; |
158 #endif | 158 #endif |
159 headset_detected_ = false; | 159 headset_detected_ = false; |
160 } else { | 160 } else { |
161 headset_detected_ = false; | 161 headset_detected_ = false; |
162 } | 162 } |
163 } | 163 } |
164 | 164 |
165 } // namespace webrtc | 165 } // namespace webrtc |
OLD | NEW |