diff --git a/audio/audio_send_stream_unittest.cc b/audio/audio_send_stream_unittest.cc index d8ff0fd083..4d18c52030 100644 --- a/audio/audio_send_stream_unittest.cc +++ b/audio/audio_send_stream_unittest.cc @@ -75,10 +75,11 @@ const AudioCodecSpec kCodecSpecs[] = { class MockLimitObserver : public BitrateAllocator::LimitObserver { public: - MOCK_METHOD3(OnAllocationLimitsChanged, + MOCK_METHOD4(OnAllocationLimitsChanged, void(uint32_t min_send_bitrate_bps, uint32_t max_padding_bitrate_bps, - uint32_t total_bitrate_bps)); + uint32_t total_bitrate_bps, + bool has_packet_feedback)); }; std::unique_ptr SetupAudioEncoderMock( diff --git a/call/bitrate_allocator.cc b/call/bitrate_allocator.cc index 278c58108d..96adb37e4c 100644 --- a/call/bitrate_allocator.cc +++ b/call/bitrate_allocator.cc @@ -220,7 +220,7 @@ void BitrateAllocator::UpdateAllocationLimits() { << total_requested_padding_bitrate << "bps"; limit_observer_->OnAllocationLimitsChanged(total_requested_min_bitrate, total_requested_padding_bitrate, - total_requested_bitrate); + total_requested_bitrate, true); } void BitrateAllocator::RemoveObserver(BitrateAllocatorObserver* observer) { diff --git a/call/bitrate_allocator.h b/call/bitrate_allocator.h index 152cea7425..18a2f44923 100644 --- a/call/bitrate_allocator.h +++ b/call/bitrate_allocator.h @@ -54,7 +54,8 @@ class BitrateAllocator { public: virtual void OnAllocationLimitsChanged(uint32_t min_send_bitrate_bps, uint32_t max_padding_bitrate_bps, - uint32_t total_bitrate_bps) = 0; + uint32_t total_bitrate_bps, + bool has_packet_feedback) = 0; protected: virtual ~LimitObserver() {} diff --git a/call/bitrate_allocator_unittest.cc b/call/bitrate_allocator_unittest.cc index 57c0b98d09..ca35d1499d 100644 --- a/call/bitrate_allocator_unittest.cc +++ b/call/bitrate_allocator_unittest.cc @@ -21,8 +21,23 @@ using ::testing::NiceMock; using ::testing::_; namespace webrtc { +// Emulating old interface for test suite compatibility. +// TODO(srte): Update tests to reflect new interface. +class LimitObserverWrapper : public BitrateAllocator::LimitObserver { + public: + void OnAllocationLimitsChanged(uint32_t min_send_bitrate_bps, + uint32_t max_padding_bitrate_bps, + uint32_t total_bitrate_bps, + bool has_packet_feedback) override { + OnAllocationLimitsChanged(min_send_bitrate_bps, max_padding_bitrate_bps, + total_bitrate_bps); + } + virtual void OnAllocationLimitsChanged(uint32_t min_send_bitrate_bps, + uint32_t max_padding_bitrate_bps, + uint32_t total_bitrate_bps) = 0; +}; -class MockLimitObserver : public BitrateAllocator::LimitObserver { +class MockLimitObserver : public LimitObserverWrapper { public: MOCK_METHOD3(OnAllocationLimitsChanged, void(uint32_t min_send_bitrate_bps, diff --git a/call/call.cc b/call/call.cc index f9cb72b444..de3213d7ab 100644 --- a/call/call.cc +++ b/call/call.cc @@ -234,7 +234,8 @@ class Call : public webrtc::Call, // Implements BitrateAllocator::LimitObserver. void OnAllocationLimitsChanged(uint32_t min_send_bitrate_bps, uint32_t max_padding_bitrate_bps, - uint32_t total_bitrate_bps) override; + uint32_t total_bitrate_bps, + bool has_packet_feedback) override; private: DeliveryStatus DeliverRtcp(MediaType media_type, const uint8_t* packet, @@ -1107,7 +1108,8 @@ void Call::OnTargetTransferRate(TargetTransferRate msg) { void Call::OnAllocationLimitsChanged(uint32_t min_send_bitrate_bps, uint32_t max_padding_bitrate_bps, - uint32_t total_bitrate_bps) { + uint32_t total_bitrate_bps, + bool has_packet_feedback) { transport_send_->SetAllocatedSendBitrateLimits( min_send_bitrate_bps, max_padding_bitrate_bps, total_bitrate_bps); rtc::CritScope lock(&bitrate_crit_);