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

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

Issue 1247293002: Add support for transport wide sequence numbers (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Rebase, again Created 5 years, 4 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
11 * RTCP module. It will aggregate the results and run one bandwidth estimation 11 * RTCP module. It will aggregate the results and run one bandwidth estimation
12 * and push the result to the encoders via BitrateObserver(s). 12 * and push the result to the encoders via BitrateObserver(s).
13 */ 13 */
14 14
15 #ifndef WEBRTC_MODULES_BITRATE_CONTROLLER_INCLUDE_BITRATE_CONTROLLER_H_ 15 #ifndef WEBRTC_MODULES_BITRATE_CONTROLLER_INCLUDE_BITRATE_CONTROLLER_H_
16 #define WEBRTC_MODULES_BITRATE_CONTROLLER_INCLUDE_BITRATE_CONTROLLER_H_ 16 #define WEBRTC_MODULES_BITRATE_CONTROLLER_INCLUDE_BITRATE_CONTROLLER_H_
17 17
18 #include <map> 18 #include <map>
19 19
20 #include "webrtc/modules/interface/module.h" 20 #include "webrtc/modules/interface/module.h"
21 #include "webrtc/modules/rtp_rtcp/interface/rtp_rtcp_defines.h" 21 #include "webrtc/modules/rtp_rtcp/interface/rtp_rtcp_defines.h"
22 22
23 namespace webrtc { 23 namespace webrtc {
24 24
25 class CriticalSectionWrapper; 25 class CriticalSectionWrapper;
26 struct PacketInfo;
26 27
27 class BitrateObserver { 28 class BitrateObserver {
28 // Observer class for bitrate changes announced due to change in bandwidth 29 // Observer class for bitrate changes announced due to change in bandwidth
29 // estimate or due to bitrate allocation changes. Fraction loss and rtt is 30 // estimate or due to bitrate allocation changes. Fraction loss and rtt is
30 // also part of this callback to allow the obsevrer to optimize its settings 31 // also part of this callback to allow the obsevrer to optimize its settings
31 // for different types of network environments. The bitrate does not include 32 // for different types of network environments. The bitrate does not include
32 // packet headers and is measured in bits per second. 33 // packet headers and is measured in bits per second.
33 public: 34 public:
34 virtual void OnNetworkChanged(uint32_t bitrate_bps, 35 virtual void OnNetworkChanged(uint32_t bitrate_bps,
35 uint8_t fraction_loss, // 0 - 255. 36 uint8_t fraction_loss, // 0 - 255.
(...skipping 20 matching lines...) Expand all
56 virtual void SetMinMaxBitrate(int min_bitrate_bps, int max_bitrate_bps) = 0; 57 virtual void SetMinMaxBitrate(int min_bitrate_bps, int max_bitrate_bps) = 0;
57 58
58 // Gets the available payload bandwidth in bits per second. Note that 59 // Gets the available payload bandwidth in bits per second. Note that
59 // this bandwidth excludes packet headers. 60 // this bandwidth excludes packet headers.
60 virtual bool AvailableBandwidth(uint32_t* bandwidth) const = 0; 61 virtual bool AvailableBandwidth(uint32_t* bandwidth) const = 0;
61 62
62 virtual void SetReservedBitrate(uint32_t reserved_bitrate_bps) = 0; 63 virtual void SetReservedBitrate(uint32_t reserved_bitrate_bps) = 0;
63 }; 64 };
64 } // namespace webrtc 65 } // namespace webrtc
65 #endif // WEBRTC_MODULES_BITRATE_CONTROLLER_INCLUDE_BITRATE_CONTROLLER_H_ 66 #endif // WEBRTC_MODULES_BITRATE_CONTROLLER_INCLUDE_BITRATE_CONTROLLER_H_
OLDNEW
« no previous file with comments | « webrtc/modules/bitrate_controller/bitrate_controller_impl.cc ('k') | webrtc/modules/bitrate_controller/send_time_history.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698