commit | 1261b5caa38688778036411fca513548efd10e31 | [log] [tgz] |
---|---|---|
author | Henrik Boström <hbos@webrtc.org> | Fri Apr 17 09:41:32 2020 +0200 |
committer | Commit Bot <commit-bot@chromium.org> | Fri Apr 17 09:40:47 2020 +0000 |
tree | 62bc85b094c4da296b5e77f70f01fe3df8299340 | |
parent | 2c80923230f5da7127cc981f3add9fed1a325cd0 [diff] |
[Adaptation] Move EffectiveDegradationPreference to RA-Processor. This CL is part of the Call-Level Adaptation Processing design doc: https://docs.google.com/document/d/1ZyC26yOCknrrcYa839ZWLxD6o6Gig5A3lVTh4E41074/edit?usp=sharing The VideoStreamAdapter is responsible for generating adaptation suggestions according to its DegradationPreference. Today there is one DegradationPreference that you set, but internally the preference it uses to make decisions is EffectiveDegradationPreference() which reinterprets “balanced” as “maintain-resolution” if screenshare is used. By moving the “effective” logic to the ResourceAdaptationProcessor, the VideoStreamAdapter will not need to know about the type of track, and the responsibility of the adapter is minimized. The “effective” logic is non-standard and something we want to get rid of - until then, it should be the responsibility of the processor to configure the adapter to use the appropriate strategy, rather than for the adapter to know about more states of the system than it needs to. Future CLs will further minimize what the adapter needs to know, moving "decision-making" logic to the Processor and "is adapt up allowed?" logic to the Resources. By removing the VideoInputMode enum the VideoStreamAdapter does not know if we have input which has to be checked externally. Input handling is followed-up on in the next CL. Bug: webrtc:11172 Change-Id: I37ec9e7392f835cf8fef9829a2c945183f0e9b65 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/172927 Commit-Queue: Henrik Boström <hbos@webrtc.org> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org> Reviewed-by: Evan Shrubsole <eshr@google.com> Cr-Commit-Position: refs/heads/master@{#31096}
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 here for instructions on how to get started developing with the native code.
Authoritative list of directories that contain the native API header files.