Index: webrtc/video/video_send_stream.h |
diff --git a/webrtc/video/video_send_stream.h b/webrtc/video/video_send_stream.h |
index 88d8abc4fb647d7c49940bbc48e627b1ef6a6592..8b3d064f3e34988f352a7a15ec3fa75f2d9cd3c2 100644 |
--- a/webrtc/video/video_send_stream.h |
+++ b/webrtc/video/video_send_stream.h |
@@ -14,6 +14,7 @@ |
#include <map> |
#include <vector> |
+#include "webrtc/call/bitrate_allocator.h" |
#include "webrtc/call.h" |
#include "webrtc/common_video/libyuv/include/webrtc_libyuv.h" |
#include "webrtc/video/encoded_frame_callback_adapter.h" |
@@ -40,14 +41,15 @@ class VieRemb; |
namespace internal { |
class VideoSendStream : public webrtc::VideoSendStream, |
- public webrtc::CpuOveruseObserver { |
+ public webrtc::CpuOveruseObserver, |
+ public webrtc::BitrateAllocatorObserver { |
public: |
VideoSendStream(int num_cpu_cores, |
ProcessThread* module_process_thread, |
CallStats* call_stats, |
CongestionController* congestion_controller, |
- VieRemb* remb, |
BitrateAllocator* bitrate_allocator, |
+ VieRemb* remb, |
const VideoSendStream::Config& config, |
const VideoEncoderConfig& encoder_config, |
const std::map<uint32_t, RtpState>& suspended_ssrcs); |
@@ -74,6 +76,11 @@ class VideoSendStream : public webrtc::VideoSendStream, |
int GetPaddingNeededBps() const; |
+ // Implements BitrateAllocatorObserver. |
+ void OnBitrateUpdated(uint32_t bitrate_bps, |
+ uint8_t fraction_loss, |
+ int64_t rtt) override; |
+ |
private: |
static bool EncoderThreadFunction(void* obj); |
void EncoderProcess(); |
@@ -88,6 +95,7 @@ class VideoSendStream : public webrtc::VideoSendStream, |
ProcessThread* const module_process_thread_; |
CallStats* const call_stats_; |
CongestionController* const congestion_controller_; |
+ BitrateAllocator* const bitrate_allocator_; |
VieRemb* const remb_; |
rtc::PlatformThread encoder_thread_; |