mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-16 23:30:48 +01:00

Merge OveruseDetector into the TrendlineEstimator (send side BWE only) and remove the OveruseDetector from DelayBasedBwe. The behavior should be the same as before. One expection is that if no packets were received for kStreamTimeOutMs (2 seconds), it would previously reset the trendline estimator but not the detector. Since they have been merged, it now resets both. Create an interface that the estimators will implement to facilitate experimentation with different estimators/detectors. Bug: webrtc:8729 Change-Id: I5c3d2161a0d0dcb2e8a140c0fd887f0286d70fd4 Reviewed-on: https://webrtc-review.googlesource.com/38781 Reviewed-by: Sebastian Jansson <srte@webrtc.org> Commit-Queue: Björn Terelius <terelius@webrtc.org> Cr-Commit-Position: refs/heads/master@{#21852}
37 lines
1.3 KiB
C++
37 lines
1.3 KiB
C++
/*
|
|
* Copyright (c) 2018 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
|
|
* tree. An additional intellectual property rights grant can be found
|
|
* in the file PATENTS. All contributing project authors may
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
#ifndef MODULES_CONGESTION_CONTROLLER_DELAY_INCREASE_DETECTOR_INTERFACE_H_
|
|
#define MODULES_CONGESTION_CONTROLLER_DELAY_INCREASE_DETECTOR_INTERFACE_H_
|
|
|
|
#include <stdint.h>
|
|
|
|
#include "modules/remote_bitrate_estimator/include/bwe_defines.h"
|
|
#include "rtc_base/constructormagic.h"
|
|
|
|
namespace webrtc {
|
|
|
|
class DelayIncreaseDetectorInterface {
|
|
public:
|
|
DelayIncreaseDetectorInterface() {}
|
|
virtual ~DelayIncreaseDetectorInterface() {}
|
|
|
|
// Update the detector with a new sample. The deltas should represent deltas
|
|
// between timestamp groups as defined by the InterArrival class.
|
|
virtual void Update(double recv_delta_ms,
|
|
double send_delta_ms,
|
|
int64_t arrival_time_ms) = 0;
|
|
|
|
virtual BandwidthUsage State() const = 0;
|
|
|
|
RTC_DISALLOW_COPY_AND_ASSIGN(DelayIncreaseDetectorInterface);
|
|
};
|
|
} // namespace webrtc
|
|
|
|
#endif // MODULES_CONGESTION_CONTROLLER_DELAY_INCREASE_DETECTOR_INTERFACE_H_
|