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

Unified Diff: webrtc/video_send_stream.h

Issue 2716643002: Add framerate to VideoSinkWants and ability to signal on overuse (Closed)
Patch Set: Comments Created 3 years, 9 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webrtc/video/vie_encoder_unittest.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/video_send_stream.h
diff --git a/webrtc/video_send_stream.h b/webrtc/video_send_stream.h
index 680eb02bc46805ae701342faabd54a81d3581f87..8a82a6df4d81a447f708f9d5c56673a61e2e123b 100644
--- a/webrtc/video_send_stream.h
+++ b/webrtc/video_send_stream.h
@@ -214,12 +214,21 @@ class VideoSendStream {
// Based on the spec in
// https://w3c.github.io/webrtc-pc/#idl-def-rtcdegradationpreference.
+ // These options are enforced on a best-effort basis. For instance, all of
+ // these options may suffer some frame drops in order to avoid queuing.
+ // TODO(sprang): Look into possibility of more strictly enforcing the
+ // maintain-framerate option.
enum class DegradationPreference {
+ // Don't take any actions based on over-utilization signals.
+ kDegradationDisabled,
+ // On over-use, request lost resolution, possibly causing down-scaling.
kMaintainResolution,
- // TODO(perkj): Implement kMaintainFrameRate. kBalanced will drop frames
- // if the encoder overshoots or the encoder can not encode fast enough.
+ // On over-use, request lower frame rate, possible causing frame drops.
+ kMaintainFramerate,
+ // Try to strike a "pleasing" balance between frame rate or resolution.
kBalanced,
};
+
virtual void SetSource(
rtc::VideoSourceInterface<webrtc::VideoFrame>* source,
const DegradationPreference& degradation_preference) = 0;
« no previous file with comments | « webrtc/video/vie_encoder_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698