Chromium Code Reviews| Index: webrtc/modules/congestion_controller/delay_based_bitrate_probing.h |
| diff --git a/webrtc/modules/remote_bitrate_estimator/remote_bitrate_estimator_abs_send_time.h b/webrtc/modules/congestion_controller/delay_based_bitrate_probing.h |
| similarity index 82% |
| copy from webrtc/modules/remote_bitrate_estimator/remote_bitrate_estimator_abs_send_time.h |
| copy to webrtc/modules/congestion_controller/delay_based_bitrate_probing.h |
| index a6119091ce75f965c69e145dd53555aeafd58383..002a6e5af71a6732c26255d16045b21be3921587 100644 |
| --- a/webrtc/modules/remote_bitrate_estimator/remote_bitrate_estimator_abs_send_time.h |
| +++ b/webrtc/modules/congestion_controller/delay_based_bitrate_probing.h |
| @@ -1,5 +1,5 @@ |
| /* |
| - * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. |
| + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. |
| * |
| * Use of this source code is governed by a BSD-style license |
| * that can be found in the LICENSE file in the root of the source |
| @@ -8,8 +8,8 @@ |
| * be found in the AUTHORS file in the root of the source tree. |
| */ |
| -#ifndef WEBRTC_MODULES_REMOTE_BITRATE_ESTIMATOR_REMOTE_BITRATE_ESTIMATOR_ABS_SEND_TIME_H_ |
| -#define WEBRTC_MODULES_REMOTE_BITRATE_ESTIMATOR_REMOTE_BITRATE_ESTIMATOR_ABS_SEND_TIME_H_ |
| +#ifndef WEBRTC_MODULES_CONGESTION_CONTROLLER_DELAY_BASED_BITRATE_PROBING_H_ |
| +#define WEBRTC_MODULES_CONGESTION_CONTROLLER_DELAY_BASED_BITRATE_PROBING_H_ |
| #include <list> |
| #include <map> |
| @@ -31,13 +31,18 @@ |
| namespace webrtc { |
| struct Probe { |
|
danilchap
2016/06/03 14:11:45
that make two webrtc::Probe structures with differ
philipel
2016/06/03 14:54:55
Good point, moved Probe and Cluster into DelayBase
|
| - Probe(int64_t send_time_ms, int64_t recv_time_ms, size_t payload_size) |
| + Probe(int64_t send_time_ms, |
| + int64_t recv_time_ms, |
| + size_t payload_size, |
| + int probe_cluster_id) |
| : send_time_ms(send_time_ms), |
| recv_time_ms(recv_time_ms), |
| - payload_size(payload_size) {} |
| + payload_size(payload_size), |
| + probe_cluster_id(probe_cluster_id) {} |
| int64_t send_time_ms; |
| int64_t recv_time_ms; |
| size_t payload_size; |
| + int probe_cluster_id; |
| }; |
| struct Cluster { |
| @@ -66,10 +71,10 @@ struct Cluster { |
| int num_above_min_delta; |
| }; |
| -class RemoteBitrateEstimatorAbsSendTime : public RemoteBitrateEstimator { |
| +class DelayBasedProbingEstimator : public RemoteBitrateEstimator { |
| public: |
| - explicit RemoteBitrateEstimatorAbsSendTime(RemoteBitrateObserver* observer); |
| - virtual ~RemoteBitrateEstimatorAbsSendTime() {} |
| + explicit DelayBasedProbingEstimator(RemoteBitrateObserver* observer); |
| + virtual ~DelayBasedProbingEstimator() {} |
| void IncomingPacketFeedbackVector( |
| const std::vector<PacketInfo>& packet_feedback_vector) override; |
| @@ -94,16 +99,14 @@ class RemoteBitrateEstimatorAbsSendTime : public RemoteBitrateEstimator { |
| typedef std::map<uint32_t, int64_t> Ssrcs; |
| enum class ProbeResult { kBitrateUpdated, kNoUpdate }; |
| - static bool IsWithinClusterBounds(int send_delta_ms, |
| - const Cluster& cluster_aggregate); |
| - |
| static void AddCluster(std::list<Cluster>* clusters, Cluster* cluster); |
| void IncomingPacketInfo(int64_t arrival_time_ms, |
| uint32_t send_time_24bits, |
| size_t payload_size, |
| uint32_t ssrc, |
| - bool was_paced); |
| + bool was_paced, |
| + int probe_cluster_id); |
| void ComputeClusters(std::list<Cluster>* clusters) const; |
| @@ -135,9 +138,9 @@ class RemoteBitrateEstimatorAbsSendTime : public RemoteBitrateEstimator { |
| Ssrcs ssrcs_ GUARDED_BY(&crit_); |
| AimdRateControl remote_rate_ GUARDED_BY(&crit_); |
| - RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(RemoteBitrateEstimatorAbsSendTime); |
| + RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(DelayBasedProbingEstimator); |
| }; |
| } // namespace webrtc |
| -#endif // WEBRTC_MODULES_REMOTE_BITRATE_ESTIMATOR_REMOTE_BITRATE_ESTIMATOR_ABS_SEND_TIME_H_ |
| +#endif // WEBRTC_MODULES_CONGESTION_CONTROLLER_DELAY_BASED_BITRATE_PROBING_H_ |