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

Side by Side Diff: webrtc/modules/bitrate_controller/include/bitrate_controller.h

Issue 2110113003: Reland of "Move RtcEventLog object from inside VoiceEngine to Call.", "Fix to make the start/stop f… (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Rebase. Created 4 years, 5 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 unified diff | Download patch
OLDNEW
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 * Usage: this class will register multiple RtcpBitrateObserver's one at each 10 * Usage: this class will register multiple RtcpBitrateObserver's one at each
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
48 // RTCPBandwidthObservers). It does one aggregated send side bandwidth 48 // RTCPBandwidthObservers). It does one aggregated send side bandwidth
49 // estimation and divide the available bitrate between all its registered 49 // estimation and divide the available bitrate between all its registered
50 // BitrateObservers. 50 // BitrateObservers.
51 public: 51 public:
52 static const int kDefaultStartBitratebps = 300000; 52 static const int kDefaultStartBitratebps = 300000;
53 53
54 // Deprecated: 54 // Deprecated:
55 // TODO(perkj): BitrateObserver has been deprecated and is not used in WebRTC. 55 // TODO(perkj): BitrateObserver has been deprecated and is not used in WebRTC.
56 // Remove this method once other other projects does not use it. 56 // Remove this method once other other projects does not use it.
57 static BitrateController* CreateBitrateController(Clock* clock, 57 static BitrateController* CreateBitrateController(Clock* clock,
58 BitrateObserver* observer); 58 BitrateObserver* observer,
59 static BitrateController* CreateBitrateController(Clock* clock); 59 RtcEventLog* event_log);
60
61 static BitrateController* CreateBitrateController(Clock* clock,
62 RtcEventLog* event_log);
60 63
61 virtual ~BitrateController() {} 64 virtual ~BitrateController() {}
62 65
63 virtual RtcpBandwidthObserver* CreateRtcpBandwidthObserver() = 0; 66 virtual RtcpBandwidthObserver* CreateRtcpBandwidthObserver() = 0;
64 67
65 // Deprecated 68 // Deprecated
66 virtual void SetStartBitrate(int start_bitrate_bps) = 0; 69 virtual void SetStartBitrate(int start_bitrate_bps) = 0;
67 // Deprecated 70 // Deprecated
68 virtual void SetMinMaxBitrate(int min_bitrate_bps, int max_bitrate_bps) = 0; 71 virtual void SetMinMaxBitrate(int min_bitrate_bps, int max_bitrate_bps) = 0;
69 virtual void SetBitrates(int start_bitrate_bps, 72 virtual void SetBitrates(int start_bitrate_bps,
70 int min_bitrate_bps, 73 int min_bitrate_bps,
71 int max_bitrate_bps) = 0; 74 int max_bitrate_bps) = 0;
72 75
73 virtual void ResetBitrates(int bitrate_bps, 76 virtual void ResetBitrates(int bitrate_bps,
74 int min_bitrate_bps, 77 int min_bitrate_bps,
75 int max_bitrate_bps) = 0; 78 int max_bitrate_bps) = 0;
76 79
77 virtual void UpdateDelayBasedEstimate(uint32_t bitrate_bps) = 0; 80 virtual void UpdateDelayBasedEstimate(uint32_t bitrate_bps) = 0;
78 81
79 virtual void SetEventLog(RtcEventLog* event_log) = 0;
80
81 // Gets the available payload bandwidth in bits per second. Note that 82 // Gets the available payload bandwidth in bits per second. Note that
82 // this bandwidth excludes packet headers. 83 // this bandwidth excludes packet headers.
83 virtual bool AvailableBandwidth(uint32_t* bandwidth) const = 0; 84 virtual bool AvailableBandwidth(uint32_t* bandwidth) const = 0;
84 85
85 virtual void SetReservedBitrate(uint32_t reserved_bitrate_bps) = 0; 86 virtual void SetReservedBitrate(uint32_t reserved_bitrate_bps) = 0;
86 87
87 virtual bool GetNetworkParameters(uint32_t* bitrate, 88 virtual bool GetNetworkParameters(uint32_t* bitrate,
88 uint8_t* fraction_loss, 89 uint8_t* fraction_loss,
89 int64_t* rtt) = 0; 90 int64_t* rtt) = 0;
90 }; 91 };
91 } // namespace webrtc 92 } // namespace webrtc
92 #endif // WEBRTC_MODULES_BITRATE_CONTROLLER_INCLUDE_BITRATE_CONTROLLER_H_ 93 #endif // WEBRTC_MODULES_BITRATE_CONTROLLER_INCLUDE_BITRATE_CONTROLLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698