Index: webrtc/video/vie_encoder.h |
diff --git a/webrtc/video/vie_encoder.h b/webrtc/video/vie_encoder.h |
index 7884bbe297d6a989c25507656eaa2cc398699766..5ad1ff7be5e740a03d4ea24fccba5dba20765d1f 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); |
@@ -231,6 +234,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_; |