Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2045)

Unified Diff: webrtc/modules/congestion_controller/delay_based_bitrate_probing.h

Issue 2038023002: Use |probe_cluster_id| to cluster packets. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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_

Powered by Google App Engine
This is Rietveld 408576698