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 |
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
147 // this is before applying any user-defined limits (specified by calling | 147 // this is before applying any user-defined limits (specified by calling |
148 // (SetMinimumDelay() and/or SetMaximumDelay()). | 148 // (SetMinimumDelay() and/or SetMaximumDelay()). |
149 // | 149 // |
150 int LeastRequiredDelayMs() const; | 150 int LeastRequiredDelayMs() const; |
151 | 151 |
152 // | 152 // |
153 // Resets the initial delay to zero. | 153 // Resets the initial delay to zero. |
154 // | 154 // |
155 void ResetInitialDelay(); | 155 void ResetInitialDelay(); |
156 | 156 |
157 // | 157 // Returns last_output_sample_rate_hz from the NetEq instance. |
158 // Get the current sampling frequency in Hz. | 158 int last_output_sample_rate_hz() const; |
159 // | |
160 // Return value : Sampling frequency in Hz. | |
161 // | |
162 int current_sample_rate_hz() const; | |
163 | 159 |
164 // | 160 // |
165 // Get the current network statistics from NetEq. | 161 // Get the current network statistics from NetEq. |
166 // | 162 // |
167 // Output: | 163 // Output: |
168 // - statistics : The current network statistics. | 164 // - statistics : The current network statistics. |
169 // | 165 // |
170 void GetNetworkStatistics(NetworkStatistics* statistics); | 166 void GetNetworkStatistics(NetworkStatistics* statistics); |
171 | 167 |
172 // | 168 // |
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
280 const Decoder* RtpHeaderToDecoder(const RTPHeader& rtp_header, | 276 const Decoder* RtpHeaderToDecoder(const RTPHeader& rtp_header, |
281 uint8_t payload_type) const | 277 uint8_t payload_type) const |
282 EXCLUSIVE_LOCKS_REQUIRED(crit_sect_); | 278 EXCLUSIVE_LOCKS_REQUIRED(crit_sect_); |
283 | 279 |
284 uint32_t NowInTimestamp(int decoder_sampling_rate) const; | 280 uint32_t NowInTimestamp(int decoder_sampling_rate) const; |
285 | 281 |
286 rtc::scoped_ptr<CriticalSectionWrapper> crit_sect_; | 282 rtc::scoped_ptr<CriticalSectionWrapper> crit_sect_; |
287 int id_; // TODO(henrik.lundin) Make const. | 283 int id_; // TODO(henrik.lundin) Make const. |
288 const Decoder* last_audio_decoder_ GUARDED_BY(crit_sect_); | 284 const Decoder* last_audio_decoder_ GUARDED_BY(crit_sect_); |
289 AudioFrame::VADActivity previous_audio_activity_ GUARDED_BY(crit_sect_); | 285 AudioFrame::VADActivity previous_audio_activity_ GUARDED_BY(crit_sect_); |
290 int current_sample_rate_hz_ GUARDED_BY(crit_sect_); | |
291 ACMResampler resampler_ GUARDED_BY(crit_sect_); | 286 ACMResampler resampler_ GUARDED_BY(crit_sect_); |
292 // Used in GetAudio, declared as member to avoid allocating every 10ms. | 287 // Used in GetAudio, declared as member to avoid allocating every 10ms. |
293 // TODO(henrik.lundin) Stack-allocate in GetAudio instead? | 288 // TODO(henrik.lundin) Stack-allocate in GetAudio instead? |
294 rtc::scoped_ptr<int16_t[]> audio_buffer_ GUARDED_BY(crit_sect_); | 289 rtc::scoped_ptr<int16_t[]> audio_buffer_ GUARDED_BY(crit_sect_); |
295 rtc::scoped_ptr<int16_t[]> last_audio_buffer_ GUARDED_BY(crit_sect_); | 290 rtc::scoped_ptr<int16_t[]> last_audio_buffer_ GUARDED_BY(crit_sect_); |
296 CallStatistics call_stats_ GUARDED_BY(crit_sect_); | 291 CallStatistics call_stats_ GUARDED_BY(crit_sect_); |
297 NetEq* neteq_; | 292 NetEq* neteq_; |
298 // Decoders map is keyed by payload type | 293 // Decoders map is keyed by payload type |
299 std::map<uint8_t, Decoder> decoders_ GUARDED_BY(crit_sect_); | 294 std::map<uint8_t, Decoder> decoders_ GUARDED_BY(crit_sect_); |
300 bool vad_enabled_; | 295 bool vad_enabled_; |
301 Clock* clock_; // TODO(henrik.lundin) Make const if possible. | 296 Clock* clock_; // TODO(henrik.lundin) Make const if possible. |
302 bool resampled_last_output_frame_ GUARDED_BY(crit_sect_); | 297 bool resampled_last_output_frame_ GUARDED_BY(crit_sect_); |
303 }; | 298 }; |
304 | 299 |
305 } // namespace acm2 | 300 } // namespace acm2 |
306 | 301 |
307 } // namespace webrtc | 302 } // namespace webrtc |
308 | 303 |
309 #endif // WEBRTC_MODULES_AUDIO_CODING_MAIN_ACM2_ACM_RECEIVER_H_ | 304 #endif // WEBRTC_MODULES_AUDIO_CODING_MAIN_ACM2_ACM_RECEIVER_H_ |
OLD | NEW |