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

Unified Diff: webrtc/video_send_stream.h

Issue 2304363002: Let ViEEncoder express resolution requests as Sinkwants (Closed)
Patch Set: Rebased and fixed. Created 4 years, 2 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
« webrtc/video/vie_encoder.cc ('K') | « 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 7ac4c3732464a21f0ed31554a8e4d556922c80f8..d641e6e1719ac5d9c9a461701dc2c223d36d0502 100644
--- a/webrtc/video_send_stream.h
+++ b/webrtc/video_send_stream.h
@@ -27,7 +27,6 @@
namespace webrtc {
-class LoadObserver;
class VideoEncoder;
class VideoSendStream {
@@ -66,6 +65,10 @@ class VideoSendStream {
int preferred_media_bitrate_bps = 0;
bool suspended = false;
bool bw_limited_resolution = false;
+ bool cpu_limited_resolution = false;
+ // Total number of times resolution as been requested to be changed due to
+ // CPU adaptation.
+ int number_of_cpu_adapt_changes = 0;
std::map<uint32_t, StreamStats> substreams;
};
@@ -150,10 +153,6 @@ class VideoSendStream {
// Transport for outgoing packets.
Transport* send_transport = nullptr;
- // Callback for overuse and normal usage based on the jitter of incoming
- // captured frames. 'nullptr' disables the callback.
- LoadObserver* overuse_callback = nullptr;
-
// Called for each I420 frame before encoding the frame. Can be used for
// effects, snapshots etc. 'nullptr' disables the callback.
rtc::VideoSinkInterface<VideoFrame>* pre_encode_callback = nullptr;
@@ -191,8 +190,8 @@ class VideoSendStream {
// When a stream is stopped, it can't receive, process or deliver packets.
virtual void Stop() = 0;
- virtual void SetSource(
- rtc::VideoSourceInterface<webrtc::VideoFrame>* source) = 0;
+ virtual void SetSource(rtc::VideoSourceInterface<webrtc::VideoFrame>* source,
+ bool disable_resolution_scaling) = 0;
// Set which streams to send. Must have at least as many SSRCs as configured
// in the config. Encoder settings are passed on to the encoder instance along
« webrtc/video/vie_encoder.cc ('K') | « webrtc/video/vie_encoder_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698