Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2013 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 |
| 11 #ifndef WEBRTC_MODULES_AUDIO_PROCESSING_AEC_AEC_CORE_INTERNAL_H_ | 11 #ifndef WEBRTC_MODULES_AUDIO_PROCESSING_AEC_AEC_CORE_INTERNAL_H_ |
| 12 #define WEBRTC_MODULES_AUDIO_PROCESSING_AEC_AEC_CORE_INTERNAL_H_ | 12 #define WEBRTC_MODULES_AUDIO_PROCESSING_AEC_AEC_CORE_INTERNAL_H_ |
| 13 | 13 |
| 14 #include <memory> | |
| 15 | |
| 14 extern "C" { | 16 extern "C" { |
| 15 #include "webrtc/common_audio/ring_buffer.h" | 17 #include "webrtc/common_audio/ring_buffer.h" |
| 16 } | 18 } |
| 17 #include "webrtc/common_audio/wav_file.h" | 19 #include "webrtc/common_audio/wav_file.h" |
| 18 #include "webrtc/modules/audio_processing/aec/aec_common.h" | 20 #include "webrtc/modules/audio_processing/aec/aec_common.h" |
| 19 #include "webrtc/modules/audio_processing/aec/aec_core.h" | 21 #include "webrtc/modules/audio_processing/aec/aec_core.h" |
| 22 #include "webrtc/modules/audio_processing/utility/mean_calculator.h" | |
| 20 #include "webrtc/typedefs.h" | 23 #include "webrtc/typedefs.h" |
| 21 | 24 |
| 22 namespace webrtc { | 25 namespace webrtc { |
| 23 | 26 |
| 24 // Number of partitions for the extended filter mode. The first one is an enum | 27 // Number of partitions for the extended filter mode. The first one is an enum |
| 25 // to be used in array declarations, as it represents the maximum filter length. | 28 // to be used in array declarations, as it represents the maximum filter length. |
| 26 enum { kExtendedNumPartitions = 32 }; | 29 enum { kExtendedNumPartitions = 32 }; |
| 27 static const int kNormalNumPartitions = 12; | 30 static const int kNormalNumPartitions = 12; |
| 28 | 31 |
| 29 // Delay estimator constants, used for logging and delay compensation if | 32 // Delay estimator constants, used for logging and delay compensation if |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 113 PowerLevel nearlevel; | 116 PowerLevel nearlevel; |
| 114 PowerLevel linoutlevel; | 117 PowerLevel linoutlevel; |
| 115 PowerLevel nlpoutlevel; | 118 PowerLevel nlpoutlevel; |
| 116 | 119 |
| 117 int metricsMode; | 120 int metricsMode; |
| 118 int stateCounter; | 121 int stateCounter; |
| 119 Stats erl; | 122 Stats erl; |
| 120 Stats erle; | 123 Stats erle; |
| 121 Stats aNlp; | 124 Stats aNlp; |
| 122 Stats rerl; | 125 Stats rerl; |
| 126 std::unique_ptr<webrtc::MeanCalculator> fraction_filter_divergent; | |
|
tlegrand-webrtc
2016/03/17 12:28:39
Is webrtc:: needed?
Maybe a better name is just f
minyue-webrtc
2016/04/03 21:42:06
"divergent" was Karl's suggestion. I think it work
| |
| 123 | 127 |
| 124 // Quantities to control H band scaling for SWB input | 128 // Quantities to control H band scaling for SWB input |
| 125 int freq_avg_ic; // initial bin for averaging nlp gain | 129 int freq_avg_ic; // initial bin for averaging nlp gain |
| 126 int flag_Hband_cn; // for comfort noise | 130 int flag_Hband_cn; // for comfort noise |
| 127 float cn_scale_Hband; // scale for comfort noise in H band | 131 float cn_scale_Hband; // scale for comfort noise in H band |
| 128 | 132 |
| 129 int delay_metrics_delivered; | 133 int delay_metrics_delivered; |
| 130 int delay_histogram[kHistorySizeBlocks]; | 134 int delay_histogram[kHistorySizeBlocks]; |
| 131 int num_delay_values; | 135 int num_delay_values; |
| 132 int delay_median; | 136 int delay_median; |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 225 typedef void (*WebRtcAecStoreAsComplex)(const float* data, | 229 typedef void (*WebRtcAecStoreAsComplex)(const float* data, |
| 226 float data_complex[2][PART_LEN1]); | 230 float data_complex[2][PART_LEN1]); |
| 227 extern WebRtcAecStoreAsComplex WebRtcAec_StoreAsComplex; | 231 extern WebRtcAecStoreAsComplex WebRtcAec_StoreAsComplex; |
| 228 | 232 |
| 229 typedef void (*WebRtcAecWindowData)(float* x_windowed, const float* x); | 233 typedef void (*WebRtcAecWindowData)(float* x_windowed, const float* x); |
| 230 extern WebRtcAecWindowData WebRtcAec_WindowData; | 234 extern WebRtcAecWindowData WebRtcAec_WindowData; |
| 231 | 235 |
| 232 } // namespace webrtc | 236 } // namespace webrtc |
| 233 | 237 |
| 234 #endif // WEBRTC_MODULES_AUDIO_PROCESSING_AEC_AEC_CORE_INTERNAL_H_ | 238 #endif // WEBRTC_MODULES_AUDIO_PROCESSING_AEC_AEC_CORE_INTERNAL_H_ |
| OLD | NEW |