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 |
11 #include "webrtc/modules/bitrate_controller/send_side_bandwidth_estimation.h" | 11 #include "webrtc/modules/bitrate_controller/send_side_bandwidth_estimation.h" |
12 | 12 |
13 #include <algorithm> | 13 #include <algorithm> |
14 #include <cmath> | 14 #include <cmath> |
15 #include <limits> | 15 #include <limits> |
16 #include <string> | 16 #include <string> |
17 | 17 |
| 18 #include "webrtc/logging/rtc_event_log/events/rtc_event_bwe_update_loss_based.h" |
18 #include "webrtc/logging/rtc_event_log/rtc_event_log.h" | 19 #include "webrtc/logging/rtc_event_log/rtc_event_log.h" |
19 #include "webrtc/modules/remote_bitrate_estimator/include/bwe_defines.h" | 20 #include "webrtc/modules/remote_bitrate_estimator/include/bwe_defines.h" |
20 #include "webrtc/rtc_base/checks.h" | 21 #include "webrtc/rtc_base/checks.h" |
21 #include "webrtc/rtc_base/logging.h" | 22 #include "webrtc/rtc_base/logging.h" |
| 23 #include "webrtc/rtc_base/ptr_util.h" |
22 #include "webrtc/system_wrappers/include/field_trial.h" | 24 #include "webrtc/system_wrappers/include/field_trial.h" |
23 #include "webrtc/system_wrappers/include/metrics.h" | 25 #include "webrtc/system_wrappers/include/metrics.h" |
24 | 26 |
25 namespace webrtc { | 27 namespace webrtc { |
26 namespace { | 28 namespace { |
27 const int64_t kBweIncreaseIntervalMs = 1000; | 29 const int64_t kBweIncreaseIntervalMs = 1000; |
28 const int64_t kBweDecreaseIntervalMs = 300; | 30 const int64_t kBweDecreaseIntervalMs = 300; |
29 const int64_t kStartPhaseMs = 2000; | 31 const int64_t kStartPhaseMs = 2000; |
30 const int64_t kBweConverganceTimeMs = 20000; | 32 const int64_t kBweConverganceTimeMs = 20000; |
31 const int kLimitNumPackets = 20; | 33 const int kLimitNumPackets = 20; |
(...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
405 << " kbps is below configured min bitrate " | 407 << " kbps is below configured min bitrate " |
406 << min_bitrate_configured_ / 1000 << " kbps."; | 408 << min_bitrate_configured_ / 1000 << " kbps."; |
407 last_low_bitrate_log_ms_ = now_ms; | 409 last_low_bitrate_log_ms_ = now_ms; |
408 } | 410 } |
409 bitrate_bps = min_bitrate_configured_; | 411 bitrate_bps = min_bitrate_configured_; |
410 } | 412 } |
411 | 413 |
412 if (bitrate_bps != current_bitrate_bps_ || | 414 if (bitrate_bps != current_bitrate_bps_ || |
413 last_fraction_loss_ != last_logged_fraction_loss_ || | 415 last_fraction_loss_ != last_logged_fraction_loss_ || |
414 now_ms - last_rtc_event_log_ms_ > kRtcEventLogPeriodMs) { | 416 now_ms - last_rtc_event_log_ms_ > kRtcEventLogPeriodMs) { |
415 event_log_->LogLossBasedBweUpdate(bitrate_bps, last_fraction_loss_, | 417 event_log_->Log(rtc::MakeUnique<RtcEventBweUpdateLossBased>( |
416 expected_packets_since_last_loss_update_); | 418 bitrate_bps, last_fraction_loss_, |
| 419 expected_packets_since_last_loss_update_)); |
417 last_logged_fraction_loss_ = last_fraction_loss_; | 420 last_logged_fraction_loss_ = last_fraction_loss_; |
418 last_rtc_event_log_ms_ = now_ms; | 421 last_rtc_event_log_ms_ = now_ms; |
419 } | 422 } |
420 current_bitrate_bps_ = bitrate_bps; | 423 current_bitrate_bps_ = bitrate_bps; |
421 } | 424 } |
422 } // namespace webrtc | 425 } // namespace webrtc |
OLD | NEW |