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 30 matching lines...) Expand all Loading... |
41 | 41 |
42 void Initialize(int sample_rate_hz, | 42 void Initialize(int sample_rate_hz, |
43 size_t num_reverse_channels_, | 43 size_t num_reverse_channels_, |
44 size_t num_output_channels_, | 44 size_t num_output_channels_, |
45 size_t num_proc_channels_); | 45 size_t num_proc_channels_); |
46 void SetExtraOptions(const Config& config); | 46 void SetExtraOptions(const Config& config); |
47 bool is_delay_agnostic_enabled() const; | 47 bool is_delay_agnostic_enabled() const; |
48 bool is_extended_filter_enabled() const; | 48 bool is_extended_filter_enabled() const; |
49 bool is_aec3_enabled() const; | 49 bool is_aec3_enabled() const; |
50 std::string GetExperimentsDescription(); | 50 std::string GetExperimentsDescription(); |
| 51 bool is_refined_adaptive_filter_enabled() const; |
51 | 52 |
52 // Checks whether the module is enabled. Must only be | 53 // Checks whether the module is enabled. Must only be |
53 // called from the render side of APM as otherwise | 54 // called from the render side of APM as otherwise |
54 // deadlocks may occur. | 55 // deadlocks may occur. |
55 bool is_enabled_render_side_query() const; | 56 bool is_enabled_render_side_query() const; |
56 | 57 |
57 // Reads render side data that has been queued on the render call. | 58 // Reads render side data that has been queued on the render call. |
58 // Called holding the capture lock. | 59 // Called holding the capture lock. |
59 void ReadQueuedRenderData(); | 60 void ReadQueuedRenderData(); |
60 | 61 |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
95 bool drift_compensation_enabled_ GUARDED_BY(crit_capture_); | 96 bool drift_compensation_enabled_ GUARDED_BY(crit_capture_); |
96 bool metrics_enabled_ GUARDED_BY(crit_capture_); | 97 bool metrics_enabled_ GUARDED_BY(crit_capture_); |
97 SuppressionLevel suppression_level_ GUARDED_BY(crit_capture_); | 98 SuppressionLevel suppression_level_ GUARDED_BY(crit_capture_); |
98 int stream_drift_samples_ GUARDED_BY(crit_capture_); | 99 int stream_drift_samples_ GUARDED_BY(crit_capture_); |
99 bool was_stream_drift_set_ GUARDED_BY(crit_capture_); | 100 bool was_stream_drift_set_ GUARDED_BY(crit_capture_); |
100 bool stream_has_echo_ GUARDED_BY(crit_capture_); | 101 bool stream_has_echo_ GUARDED_BY(crit_capture_); |
101 bool delay_logging_enabled_ GUARDED_BY(crit_capture_); | 102 bool delay_logging_enabled_ GUARDED_BY(crit_capture_); |
102 bool extended_filter_enabled_ GUARDED_BY(crit_capture_); | 103 bool extended_filter_enabled_ GUARDED_BY(crit_capture_); |
103 bool delay_agnostic_enabled_ GUARDED_BY(crit_capture_); | 104 bool delay_agnostic_enabled_ GUARDED_BY(crit_capture_); |
104 bool aec3_enabled_ GUARDED_BY(crit_capture_); | 105 bool aec3_enabled_ GUARDED_BY(crit_capture_); |
| 106 bool refined_adaptive_filter_enabled_ GUARDED_BY(crit_capture_) = false; |
105 | 107 |
106 size_t render_queue_element_max_size_ GUARDED_BY(crit_render_) | 108 size_t render_queue_element_max_size_ GUARDED_BY(crit_render_) |
107 GUARDED_BY(crit_capture_); | 109 GUARDED_BY(crit_capture_); |
108 std::vector<float> render_queue_buffer_ GUARDED_BY(crit_render_); | 110 std::vector<float> render_queue_buffer_ GUARDED_BY(crit_render_); |
109 std::vector<float> capture_queue_buffer_ GUARDED_BY(crit_capture_); | 111 std::vector<float> capture_queue_buffer_ GUARDED_BY(crit_capture_); |
110 | 112 |
111 // Lock protection not needed. | 113 // Lock protection not needed. |
112 std::unique_ptr<SwapQueue<std::vector<float>, RenderQueueItemVerifier<float>>> | 114 std::unique_ptr<SwapQueue<std::vector<float>, RenderQueueItemVerifier<float>>> |
113 render_signal_queue_; | 115 render_signal_queue_; |
114 | 116 |
115 std::vector<std::unique_ptr<Canceller>> cancellers_; | 117 std::vector<std::unique_ptr<Canceller>> cancellers_; |
116 std::unique_ptr<StreamProperties> stream_properties_; | 118 std::unique_ptr<StreamProperties> stream_properties_; |
117 | 119 |
118 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(EchoCancellationImpl); | 120 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(EchoCancellationImpl); |
119 }; | 121 }; |
120 | 122 |
121 } // namespace webrtc | 123 } // namespace webrtc |
122 | 124 |
123 #endif // WEBRTC_MODULES_AUDIO_PROCESSING_ECHO_CANCELLATION_IMPL_H_ | 125 #endif // WEBRTC_MODULES_AUDIO_PROCESSING_ECHO_CANCELLATION_IMPL_H_ |
OLD | NEW |