commit | 4e193e4f76ae30a160d8268f3a7c4ccb20e6afaa | [log] [tgz] |
---|---|---|
author | Erik Språng <sprang@webrtc.org> | Fri Sep 14 17:01:58 2018 |
committer | Commit Bot <commit-bot@chromium.org> | Mon Sep 17 10:01:27 2018 |
tree | 0a3b35d81e2a636dd9bf953f6f19d7cd4d2bc6fb | |
parent | 9888f65a461488588b08a78516333d6577e0b816 [diff] |
Add ability to throttle VideoBitrateAllocation updates. When the bandwidth estimate is volatile, and the frame rate is high, each new frame might trigger a new video bitrate allocation that is very close to the previous one, during BWE rampup. This might cause unnecessarily high RTCP traffic. This CL throttles those updates, if the allocation fullfills all of: * Larger or the same total bitrate as the previously sent one * Less than 10% larger bitrate compared to the previous one * Same layers enables as the previous one * Less than 500ms has passed since the previous one Additionally, a call to OnEncodedImage can cause a throttled allocation to be sent if 500ms has passed but no new call to OnBitrateUpdated has been seen. Bug: webrtc:9734 Change-Id: I2a17c2e512387e273e9c22bffcebd290727dc883 Reviewed-on: https://webrtc-review.googlesource.com/100560 Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org> Commit-Queue: Erik Språng <sprang@webrtc.org> Cr-Commit-Position: refs/heads/master@{#24751}
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.
See http://www.webrtc.org/native-code/development for instructions on how to get started developing with the native code.
Authoritative list of directories that contain the native API header files.