Index: webrtc/video/vie_encoder.h |
diff --git a/webrtc/video/vie_encoder.h b/webrtc/video/vie_encoder.h |
index 8373a3f51d587c3bfba9ac804233a36c5d828599..7dc4feff5ec8342875df3c4317ab170e3873a389 100644 |
--- a/webrtc/video/vie_encoder.h |
+++ b/webrtc/video/vie_encoder.h |
@@ -37,6 +37,7 @@ namespace webrtc { |
class ProcessThread; |
class SendStatisticsProxy; |
+class VideoBitrateAllocationObserver; |
// VieEncoder represent a video encoder that accepts raw video frames as input |
// and produces an encoded bit stream. |
@@ -91,6 +92,8 @@ class ViEEncoder : public rtc::VideoSinkInterface<VideoFrame>, |
// TODO(perkj): Can we remove VideoCodec.startBitrate ? |
void SetStartBitrate(int start_bitrate_bps); |
+ void SetBitrateObserver(VideoBitrateAllocationObserver* bitrate_observer); |
+ |
void ConfigureEncoder(VideoEncoderConfig config, |
size_t max_data_payload_length, |
bool nack_enabled); |
@@ -229,6 +232,8 @@ class ViEEncoder : public rtc::VideoSinkInterface<VideoFrame>, |
int captured_frame_count_ ACCESS_ON(&encoder_queue_); |
int dropped_frame_count_ ACCESS_ON(&encoder_queue_); |
+ VideoBitrateAllocationObserver* bitrate_observer_ ACCESS_ON(&encoder_queue_); |
+ |
// All public methods are proxied to |encoder_queue_|. It must must be |
// destroyed first to make sure no tasks are run that use other members. |
rtc::TaskQueue encoder_queue_; |