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 20 matching lines...) Expand all Loading... |
31 class EchoControlMobileImpl; | 31 class EchoControlMobileImpl; |
32 class FileWrapper; | 32 class FileWrapper; |
33 class GainControlImpl; | 33 class GainControlImpl; |
34 class GainControlForNewAgc; | 34 class GainControlForNewAgc; |
35 class HighPassFilterImpl; | 35 class HighPassFilterImpl; |
36 class LevelEstimatorImpl; | 36 class LevelEstimatorImpl; |
37 class NoiseSuppressionImpl; | 37 class NoiseSuppressionImpl; |
38 class ProcessingComponent; | 38 class ProcessingComponent; |
39 class TransientSuppressor; | 39 class TransientSuppressor; |
40 class VoiceDetectionImpl; | 40 class VoiceDetectionImpl; |
| 41 class IntelligibilityEnhancer; |
41 | 42 |
42 #ifdef WEBRTC_AUDIOPROC_DEBUG_DUMP | 43 #ifdef WEBRTC_AUDIOPROC_DEBUG_DUMP |
43 namespace audioproc { | 44 namespace audioproc { |
44 | 45 |
45 class Event; | 46 class Event; |
46 | 47 |
47 } // namespace audioproc | 48 } // namespace audioproc |
48 #endif | 49 #endif |
49 | 50 |
50 class AudioRate { | 51 class AudioRate { |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
112 bool output_will_be_muted() const override; | 113 bool output_will_be_muted() const override; |
113 int ProcessStream(AudioFrame* frame) override; | 114 int ProcessStream(AudioFrame* frame) override; |
114 int ProcessStream(const float* const* src, | 115 int ProcessStream(const float* const* src, |
115 int samples_per_channel, | 116 int samples_per_channel, |
116 int input_sample_rate_hz, | 117 int input_sample_rate_hz, |
117 ChannelLayout input_layout, | 118 ChannelLayout input_layout, |
118 int output_sample_rate_hz, | 119 int output_sample_rate_hz, |
119 ChannelLayout output_layout, | 120 ChannelLayout output_layout, |
120 float* const* dest) override; | 121 float* const* dest) override; |
121 int AnalyzeReverseStream(AudioFrame* frame) override; | 122 int AnalyzeReverseStream(AudioFrame* frame) override; |
122 int AnalyzeReverseStream(const float* const* data, | 123 int AnalyzeReverseStream(float* const* data, |
123 int samples_per_channel, | 124 int samples_per_channel, |
124 int sample_rate_hz, | 125 int sample_rate_hz, |
125 ChannelLayout layout) override; | 126 ChannelLayout layout) override; |
126 int set_stream_delay_ms(int delay) override; | 127 int set_stream_delay_ms(int delay) override; |
127 int stream_delay_ms() const override; | 128 int stream_delay_ms() const override; |
128 bool was_stream_delay_set() const override; | 129 bool was_stream_delay_set() const override; |
129 void set_delay_offset_ms(int offset) override; | 130 void set_delay_offset_ms(int offset) override; |
130 int delay_offset_ms() const override; | 131 int delay_offset_ms() const override; |
131 void set_stream_key_pressed(bool key_pressed) override; | 132 void set_stream_key_pressed(bool key_pressed) override; |
132 bool stream_key_pressed() const override; | 133 bool stream_key_pressed() const override; |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
165 int ProcessStreamLocked() EXCLUSIVE_LOCKS_REQUIRED(crit_); | 166 int ProcessStreamLocked() EXCLUSIVE_LOCKS_REQUIRED(crit_); |
166 int AnalyzeReverseStreamLocked() EXCLUSIVE_LOCKS_REQUIRED(crit_); | 167 int AnalyzeReverseStreamLocked() EXCLUSIVE_LOCKS_REQUIRED(crit_); |
167 | 168 |
168 bool is_data_processed() const; | 169 bool is_data_processed() const; |
169 bool output_copy_needed(bool is_data_processed) const; | 170 bool output_copy_needed(bool is_data_processed) const; |
170 bool synthesis_needed(bool is_data_processed) const; | 171 bool synthesis_needed(bool is_data_processed) const; |
171 bool analysis_needed(bool is_data_processed) const; | 172 bool analysis_needed(bool is_data_processed) const; |
172 void InitializeExperimentalAgc() EXCLUSIVE_LOCKS_REQUIRED(crit_); | 173 void InitializeExperimentalAgc() EXCLUSIVE_LOCKS_REQUIRED(crit_); |
173 void InitializeTransient() EXCLUSIVE_LOCKS_REQUIRED(crit_); | 174 void InitializeTransient() EXCLUSIVE_LOCKS_REQUIRED(crit_); |
174 void InitializeBeamformer() EXCLUSIVE_LOCKS_REQUIRED(crit_); | 175 void InitializeBeamformer() EXCLUSIVE_LOCKS_REQUIRED(crit_); |
| 176 void InitializeIntelligibility() EXCLUSIVE_LOCKS_REQUIRED(crit_); |
175 void MaybeUpdateHistograms() EXCLUSIVE_LOCKS_REQUIRED(crit_); | 177 void MaybeUpdateHistograms() EXCLUSIVE_LOCKS_REQUIRED(crit_); |
176 | 178 |
177 EchoCancellationImpl* echo_cancellation_; | 179 EchoCancellationImpl* echo_cancellation_; |
178 EchoControlMobileImpl* echo_control_mobile_; | 180 EchoControlMobileImpl* echo_control_mobile_; |
179 GainControlImpl* gain_control_; | 181 GainControlImpl* gain_control_; |
180 HighPassFilterImpl* high_pass_filter_; | 182 HighPassFilterImpl* high_pass_filter_; |
181 LevelEstimatorImpl* level_estimator_; | 183 LevelEstimatorImpl* level_estimator_; |
182 NoiseSuppressionImpl* noise_suppression_; | 184 NoiseSuppressionImpl* noise_suppression_; |
183 VoiceDetectionImpl* voice_detection_; | 185 VoiceDetectionImpl* voice_detection_; |
184 rtc::scoped_ptr<GainControlForNewAgc> gain_control_for_new_agc_; | 186 rtc::scoped_ptr<GainControlForNewAgc> gain_control_for_new_agc_; |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
223 rtc::scoped_ptr<AgcManagerDirect> agc_manager_ GUARDED_BY(crit_); | 225 rtc::scoped_ptr<AgcManagerDirect> agc_manager_ GUARDED_BY(crit_); |
224 int agc_startup_min_volume_; | 226 int agc_startup_min_volume_; |
225 | 227 |
226 bool transient_suppressor_enabled_; | 228 bool transient_suppressor_enabled_; |
227 rtc::scoped_ptr<TransientSuppressor> transient_suppressor_; | 229 rtc::scoped_ptr<TransientSuppressor> transient_suppressor_; |
228 const bool beamformer_enabled_; | 230 const bool beamformer_enabled_; |
229 rtc::scoped_ptr<Beamformer<float>> beamformer_; | 231 rtc::scoped_ptr<Beamformer<float>> beamformer_; |
230 const std::vector<Point> array_geometry_; | 232 const std::vector<Point> array_geometry_; |
231 | 233 |
232 const bool supports_48kHz_; | 234 const bool supports_48kHz_; |
| 235 |
| 236 bool intelligibility_enabled_; |
| 237 rtc::scoped_ptr<IntelligibilityEnhancer> intelligibility_enhancer_; |
233 }; | 238 }; |
234 | 239 |
235 } // namespace webrtc | 240 } // namespace webrtc |
236 | 241 |
237 #endif // WEBRTC_MODULES_AUDIO_PROCESSING_AUDIO_PROCESSING_IMPL_H_ | 242 #endif // WEBRTC_MODULES_AUDIO_PROCESSING_AUDIO_PROCESSING_IMPL_H_ |
OLD | NEW |