Index: webrtc/video/vie_encoder.h |
diff --git a/webrtc/video/vie_encoder.h b/webrtc/video/vie_encoder.h |
index ae9f0bae5bdc64bd8af2d8b0139c8b2345e9e1e9..bf0c2d2478df6713d6a1f4549b522a3d3d94ccae 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. |
@@ -93,6 +94,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); |
@@ -233,6 +236,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_; |