commit | 9cef11b75e5173cef3995155f5de80f8710fccae | [log] [tgz] |
---|---|---|
author | sergeyu <sergeyu@chromium.org> | Fri Dec 02 11:03:01 2016 -0800 |
committer | Commit bot <commit-bot@chromium.org> | Fri Dec 02 19:03:08 2016 +0000 |
tree | 2102149aa63177f2f08cc510629ea9394a9ff348 | |
parent | 5e6c52c0ce324cd3db418594397e1618fdd97005 [diff] |
Fix exponential probing in ProbeController. https://codereview.webrtc.org/2504023002 broke exponential probing. After that change ProbeController stops exponential probes prematurely: it goes to kProbingComplete state if SetEstimatedBitrate() is called with bitrate lower than min_bitrate_to_probe_further_bps_, which always happens with the first pair of probes. As result it wasn't sending repeated probes as it should. This change fixes that issue by moving probe expieration logic to ProbeContoller::Process(). This also ensures that the controller goes to kProbingComplete state as soon as probing timeout expired, without waiting for the next SetEstimatedBitrate() call. BUG=669421 Review-Url: https://codereview.webrtc.org/2546613003 Cr-Commit-Position: refs/heads/master@{#15392}
WebRTC is a free, open software project that provides browsers and mobile applications with Real-Time Communications (RTC) capabilities via simple APIs. The WebRTC components have been optimized to best serve this purpose.
Our mission: To enable rich, high-quality RTC applications to be developed for the browser, mobile platforms, and IoT devices, and allow them all to communicate via a common set of protocols.
The WebRTC initiative is a project supported by Google, Mozilla and Opera, amongst others. This page is maintained by the Google Chrome team.
See http://www.webrtc.org/native-code/development for instructions on how to get started developing with the native code.