| 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 258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 269 {kSampleRate16kHz, 1, false}, | 269 {kSampleRate16kHz, 1, false}, |
| 270 {kSampleRate16kHz, 1, false}, | 270 {kSampleRate16kHz, 1, false}, |
| 271 {kSampleRate16kHz, 1, false}}}), | 271 {kSampleRate16kHz, 1, false}}}), |
| 272 rev_proc_format(kSampleRate16kHz, 1) {} | 272 rev_proc_format(kSampleRate16kHz, 1) {} |
| 273 ProcessingConfig api_format; | 273 ProcessingConfig api_format; |
| 274 StreamConfig rev_proc_format; | 274 StreamConfig rev_proc_format; |
| 275 } formats_; | 275 } formats_; |
| 276 | 276 |
| 277 // APM constants. | 277 // APM constants. |
| 278 const struct ApmConstants { | 278 const struct ApmConstants { |
| 279 ApmConstants(int agc_startup_min_volume, | 279 ApmConstants(int agc_startup_min_volume, bool use_experimental_agc) |
| 280 bool use_experimental_agc, | |
| 281 bool intelligibility_enabled) | |
| 282 : // Format of processing streams at input/output call sites. | 280 : // Format of processing streams at input/output call sites. |
| 283 agc_startup_min_volume(agc_startup_min_volume), | 281 agc_startup_min_volume(agc_startup_min_volume), |
| 284 use_experimental_agc(use_experimental_agc), | 282 use_experimental_agc(use_experimental_agc) {} |
| 285 intelligibility_enabled(intelligibility_enabled) {} | |
| 286 int agc_startup_min_volume; | 283 int agc_startup_min_volume; |
| 287 bool use_experimental_agc; | 284 bool use_experimental_agc; |
| 288 bool intelligibility_enabled; | |
| 289 } constants_; | 285 } constants_; |
| 290 | 286 |
| 291 struct ApmCaptureState { | 287 struct ApmCaptureState { |
| 292 ApmCaptureState(bool transient_suppressor_enabled, | 288 ApmCaptureState(bool transient_suppressor_enabled, |
| 293 const std::vector<Point>& array_geometry, | 289 const std::vector<Point>& array_geometry, |
| 294 SphericalPointf target_direction) | 290 SphericalPointf target_direction) |
| 295 : aec_system_delay_jumps(-1), | 291 : aec_system_delay_jumps(-1), |
| 296 delay_offset_ms(0), | 292 delay_offset_ms(0), |
| 297 was_stream_delay_set(false), | 293 was_stream_delay_set(false), |
| 298 last_stream_delay_ms(0), | 294 last_stream_delay_ms(0), |
| (...skipping 19 matching lines...) Expand all Loading... |
| 318 SphericalPointf target_direction; | 314 SphericalPointf target_direction; |
| 319 std::unique_ptr<AudioBuffer> capture_audio; | 315 std::unique_ptr<AudioBuffer> capture_audio; |
| 320 // Only the rate and samples fields of fwd_proc_format_ are used because the | 316 // Only the rate and samples fields of fwd_proc_format_ are used because the |
| 321 // forward processing number of channels is mutable and is tracked by the | 317 // forward processing number of channels is mutable and is tracked by the |
| 322 // capture_audio_. | 318 // capture_audio_. |
| 323 StreamConfig fwd_proc_format; | 319 StreamConfig fwd_proc_format; |
| 324 int split_rate; | 320 int split_rate; |
| 325 } capture_ GUARDED_BY(crit_capture_); | 321 } capture_ GUARDED_BY(crit_capture_); |
| 326 | 322 |
| 327 struct ApmCaptureNonLockedState { | 323 struct ApmCaptureNonLockedState { |
| 328 ApmCaptureNonLockedState(bool beamformer_enabled) | 324 ApmCaptureNonLockedState(bool beamformer_enabled, |
| 325 bool intelligibility_enabled) |
| 329 : fwd_proc_format(kSampleRate16kHz), | 326 : fwd_proc_format(kSampleRate16kHz), |
| 330 split_rate(kSampleRate16kHz), | 327 split_rate(kSampleRate16kHz), |
| 331 stream_delay_ms(0), | 328 stream_delay_ms(0), |
| 332 beamformer_enabled(beamformer_enabled) {} | 329 beamformer_enabled(beamformer_enabled), |
| 330 intelligibility_enabled(intelligibility_enabled) {} |
| 333 // Only the rate and samples fields of fwd_proc_format_ are used because the | 331 // Only the rate and samples fields of fwd_proc_format_ are used because the |
| 334 // forward processing number of channels is mutable and is tracked by the | 332 // forward processing number of channels is mutable and is tracked by the |
| 335 // capture_audio_. | 333 // capture_audio_. |
| 336 StreamConfig fwd_proc_format; | 334 StreamConfig fwd_proc_format; |
| 337 int split_rate; | 335 int split_rate; |
| 338 int stream_delay_ms; | 336 int stream_delay_ms; |
| 339 bool beamformer_enabled; | 337 bool beamformer_enabled; |
| 338 bool intelligibility_enabled; |
| 340 } capture_nonlocked_; | 339 } capture_nonlocked_; |
| 341 | 340 |
| 342 struct ApmRenderState { | 341 struct ApmRenderState { |
| 343 std::unique_ptr<AudioConverter> render_converter; | 342 std::unique_ptr<AudioConverter> render_converter; |
| 344 std::unique_ptr<AudioBuffer> render_audio; | 343 std::unique_ptr<AudioBuffer> render_audio; |
| 345 } render_ GUARDED_BY(crit_render_); | 344 } render_ GUARDED_BY(crit_render_); |
| 346 }; | 345 }; |
| 347 | 346 |
| 348 } // namespace webrtc | 347 } // namespace webrtc |
| 349 | 348 |
| 350 #endif // WEBRTC_MODULES_AUDIO_PROCESSING_AUDIO_PROCESSING_IMPL_H_ | 349 #endif // WEBRTC_MODULES_AUDIO_PROCESSING_AUDIO_PROCESSING_IMPL_H_ |
| OLD | NEW |