| 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 380 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 391 RTC_DCHECK(task_queue_.IsCurrent()); | 391 RTC_DCHECK(task_queue_.IsCurrent()); |
| 392 | 392 |
| 393 int64_t now_time = rtc::TimeMillis(); | 393 int64_t now_time = rtc::TimeMillis(); |
| 394 int64_t next_callback_time = now_time + kTimerIntervalInMilliseconds; | 394 int64_t next_callback_time = now_time + kTimerIntervalInMilliseconds; |
| 395 int64_t time_since_last = rtc::TimeDiff(now_time, last_log_stat_time_); | 395 int64_t time_since_last = rtc::TimeDiff(now_time, last_log_stat_time_); |
| 396 last_log_stat_time_ = now_time; | 396 last_log_stat_time_ = now_time; |
| 397 | 397 |
| 398 // Log the latest statistics but skip the first 10 seconds since we are not | 398 // Log the latest statistics but skip the first 10 seconds since we are not |
| 399 // sure of the exact starting point. I.e., the first log printout will be | 399 // sure of the exact starting point. I.e., the first log printout will be |
| 400 // after ~20 seconds. | 400 // after ~20 seconds. |
| 401 if (++num_stat_reports_ > 1) { | 401 if (++num_stat_reports_ > 1 && time_since_last > 0) { |
| 402 uint32_t diff_samples = rec_samples_ - last_rec_samples_; | 402 uint32_t diff_samples = rec_samples_ - last_rec_samples_; |
| 403 uint32_t rate = diff_samples / kTimerIntervalInSeconds; | 403 float rate = diff_samples / (static_cast<float>(time_since_last) / 1000.0); |
| 404 LOG(INFO) << "[REC : " << time_since_last << "msec, " | 404 LOG(INFO) << "[REC : " << time_since_last << "msec, " |
| 405 << rec_sample_rate_ / 1000 | 405 << rec_sample_rate_ / 1000 |
| 406 << "kHz] callbacks: " << rec_callbacks_ - last_rec_callbacks_ | 406 << "kHz] callbacks: " << rec_callbacks_ - last_rec_callbacks_ |
| 407 << ", " | 407 << ", " |
| 408 << "samples: " << diff_samples << ", " | 408 << "samples: " << diff_samples << ", " |
| 409 << "rate: " << rate << ", " | 409 << "rate: " << static_cast<int>(rate + 0.5) << ", " |
| 410 << "level: " << max_rec_level_; | 410 << "level: " << max_rec_level_; |
| 411 | 411 |
| 412 diff_samples = play_samples_ - last_play_samples_; | 412 diff_samples = play_samples_ - last_play_samples_; |
| 413 rate = diff_samples / kTimerIntervalInSeconds; | 413 rate = diff_samples / (static_cast<float>(time_since_last) / 1000.0); |
| 414 LOG(INFO) << "[PLAY: " << time_since_last << "msec, " | 414 LOG(INFO) << "[PLAY: " << time_since_last << "msec, " |
| 415 << play_sample_rate_ / 1000 | 415 << play_sample_rate_ / 1000 |
| 416 << "kHz] callbacks: " << play_callbacks_ - last_play_callbacks_ | 416 << "kHz] callbacks: " << play_callbacks_ - last_play_callbacks_ |
| 417 << ", " | 417 << ", " |
| 418 << "samples: " << diff_samples << ", " | 418 << "samples: " << diff_samples << ", " |
| 419 << "rate: " << rate << ", " | 419 << "rate: " << static_cast<int>(rate + 0.5) << ", " |
| 420 << "level: " << max_play_level_; | 420 << "level: " << max_play_level_; |
| 421 } | 421 } |
| 422 | 422 |
| 423 // Count number of times we detect "no audio" corresponding to a case where | 423 // Count number of times we detect "no audio" corresponding to a case where |
| 424 // all level measurements have been zero. | 424 // all level measurements have been zero. |
| 425 if (max_rec_level_ == 0) { | 425 if (max_rec_level_ == 0) { |
| 426 ++num_rec_level_is_zero_; | 426 ++num_rec_level_is_zero_; |
| 427 } | 427 } |
| 428 | 428 |
| 429 last_rec_callbacks_ = rec_callbacks_; | 429 last_rec_callbacks_ = rec_callbacks_; |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 490 int16_t max_abs = WebRtcSpl_MaxAbsValueW16( | 490 int16_t max_abs = WebRtcSpl_MaxAbsValueW16( |
| 491 static_cast<int16_t*>(const_cast<void*>(audio_buffer)), | 491 static_cast<int16_t*>(const_cast<void*>(audio_buffer)), |
| 492 num_samples * play_channels_); | 492 num_samples * play_channels_); |
| 493 if (max_abs > max_play_level_) { | 493 if (max_abs > max_play_level_) { |
| 494 max_play_level_ = max_abs; | 494 max_play_level_ = max_abs; |
| 495 } | 495 } |
| 496 } | 496 } |
| 497 } | 497 } |
| 498 | 498 |
| 499 } // namespace webrtc | 499 } // namespace webrtc |
| OLD | NEW |