| Index: webrtc/modules/rtp_rtcp/source/rtcp_receiver.cc
|
| diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_receiver.cc b/webrtc/modules/rtp_rtcp/source/rtcp_receiver.cc
|
| index 3e8e47fbd377372cac9bae6b2f6389464eb10e7c..34b2ce3687f4f442787ea5c27d1ccd7ea006c86b 100644
|
| --- a/webrtc/modules/rtp_rtcp/source/rtcp_receiver.cc
|
| +++ b/webrtc/modules/rtp_rtcp/source/rtcp_receiver.cc
|
| @@ -20,6 +20,7 @@
|
| #include "webrtc/modules/rtp_rtcp/source/rtcp_utility.h"
|
| #include "webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl.h"
|
| #include "webrtc/modules/rtp_rtcp/source/time_util.h"
|
| +#include "webrtc/modules/rtp_rtcp/source/tmmbr_help.h"
|
| #include "webrtc/system_wrappers/include/ntp_time.h"
|
|
|
| namespace webrtc {
|
| @@ -44,8 +45,7 @@ RTCPReceiver::RTCPReceiver(
|
| RtcpIntraFrameObserver* rtcp_intra_frame_observer,
|
| TransportFeedbackObserver* transport_feedback_observer,
|
| ModuleRtpRtcpImpl* owner)
|
| - : TMMBRHelp(),
|
| - _clock(clock),
|
| + : _clock(clock),
|
| receiver_only_(receiver_only),
|
| _lastReceived(0),
|
| _rtpRtcp(*owner),
|
| @@ -1233,22 +1233,20 @@ void RTCPReceiver::HandleTransportFeedback(
|
| rtcp_parser->Iterate();
|
| }
|
| int32_t RTCPReceiver::UpdateTMMBR() {
|
| + TMMBRHelp tmmbr_help;
|
| int32_t numBoundingSet = 0;
|
| uint32_t bitrate = 0;
|
| uint32_t accNumCandidates = 0;
|
|
|
| int32_t size = TMMBRReceived(0, 0, NULL);
|
| if (size > 0) {
|
| - TMMBRSet* candidateSet = VerifyAndAllocateCandidateSet(size);
|
| + TMMBRSet* candidateSet = tmmbr_help.VerifyAndAllocateCandidateSet(size);
|
| // Get candidate set from receiver.
|
| accNumCandidates = TMMBRReceived(size, accNumCandidates, candidateSet);
|
| - } else {
|
| - // Candidate set empty.
|
| - VerifyAndAllocateCandidateSet(0); // resets candidate set
|
| }
|
| // Find bounding set
|
| TMMBRSet* boundingSet = NULL;
|
| - numBoundingSet = FindTMMBRBoundingSet(boundingSet);
|
| + numBoundingSet = tmmbr_help.FindTMMBRBoundingSet(boundingSet);
|
| if (numBoundingSet == -1) {
|
| LOG(LS_WARNING) << "Failed to find TMMBR bounding set.";
|
| return -1;
|
| @@ -1265,7 +1263,7 @@ int32_t RTCPReceiver::UpdateTMMBR() {
|
| return 0;
|
| }
|
| // Get net bitrate from bounding set depending on sent packet rate
|
| - if (CalcMinBitRate(&bitrate)) {
|
| + if (tmmbr_help.CalcMinBitRate(&bitrate)) {
|
| // we have a new bandwidth estimate on this channel
|
| if (_cbRtcpBandwidthObserver) {
|
| _cbRtcpBandwidthObserver->OnReceivedEstimatedBitrate(bitrate * 1000);
|
|
|