| Index: webrtc/call/flexfec_receive_stream.cc
 | 
| diff --git a/webrtc/call/flexfec_receive_stream.cc b/webrtc/call/flexfec_receive_stream.cc
 | 
| index 61a31418ccda31af061dbb8e50a2dd4b030bf649..9e0fe2dedb69445cdfaa5b97436d504690bdfe99 100644
 | 
| --- a/webrtc/call/flexfec_receive_stream.cc
 | 
| +++ b/webrtc/call/flexfec_receive_stream.cc
 | 
| @@ -10,6 +10,8 @@
 | 
|  
 | 
|  #include "webrtc/call/flexfec_receive_stream.h"
 | 
|  
 | 
| +#include <utility>
 | 
| +
 | 
|  #include "webrtc/base/checks.h"
 | 
|  #include "webrtc/base/logging.h"
 | 
|  
 | 
| @@ -34,12 +36,12 @@ std::string FlexfecReceiveStream::Config::ToString() const {
 | 
|    if (!protected_media_ssrcs.empty())
 | 
|      ss << protected_media_ssrcs[i];
 | 
|    ss << "], transport_cc: " << (transport_cc ? "on" : "off");
 | 
| -  ss << ", extensions: [";
 | 
| +  ss << ", rtp_header_extensions: [";
 | 
|    i = 0;
 | 
| -  for (; i + 1 < extensions.size(); ++i)
 | 
| -    ss << extensions[i].ToString() << ", ";
 | 
| -  if (!extensions.empty())
 | 
| -    ss << extensions[i].ToString();
 | 
| +  for (; i + 1 < rtp_header_extensions.size(); ++i)
 | 
| +    ss << rtp_header_extensions[i].ToString() << ", ";
 | 
| +  if (!rtp_header_extensions.empty())
 | 
| +    ss << rtp_header_extensions[i].ToString();
 | 
|    ss << "]}";
 | 
|    return ss.str();
 | 
|  }
 | 
| @@ -49,7 +51,8 @@ namespace {
 | 
|  // TODO(brandtr): Update this function when we support multistream protection.
 | 
|  std::unique_ptr<FlexfecReceiver> MaybeCreateFlexfecReceiver(
 | 
|      const FlexfecReceiveStream::Config& config,
 | 
| -    RecoveredPacketReceiver* recovered_packet_callback) {
 | 
| +    RecoveredPacketReceiver* recovered_packet_receiver,
 | 
| +    RemoteBitrateEstimator* remote_bitrate_estimator) {
 | 
|    if (config.payload_type < 0) {
 | 
|      LOG(LS_WARNING) << "Invalid FlexFEC payload type given. "
 | 
|                      << "This FlexfecReceiveStream will therefore be useless.";
 | 
| @@ -79,7 +82,7 @@ std::unique_ptr<FlexfecReceiver> MaybeCreateFlexfecReceiver(
 | 
|    RTC_DCHECK_EQ(1U, config.protected_media_ssrcs.size());
 | 
|    return std::unique_ptr<FlexfecReceiver>(
 | 
|        new FlexfecReceiver(config.remote_ssrc, config.protected_media_ssrcs[0],
 | 
| -                          recovered_packet_callback));
 | 
| +                          recovered_packet_receiver, remote_bitrate_estimator));
 | 
|  }
 | 
|  
 | 
|  }  // namespace
 | 
| @@ -88,11 +91,13 @@ namespace internal {
 | 
|  
 | 
|  FlexfecReceiveStream::FlexfecReceiveStream(
 | 
|      const Config& config,
 | 
| -    RecoveredPacketReceiver* recovered_packet_callback)
 | 
| +    RecoveredPacketReceiver* recovered_packet_receiver,
 | 
| +    RemoteBitrateEstimator* remote_bitrate_estimator)
 | 
|      : started_(false),
 | 
|        config_(config),
 | 
| -      receiver_(
 | 
| -          MaybeCreateFlexfecReceiver(config_, recovered_packet_callback)) {
 | 
| +      receiver_(MaybeCreateFlexfecReceiver(config_,
 | 
| +                                           recovered_packet_receiver,
 | 
| +                                           remote_bitrate_estimator)) {
 | 
|    LOG(LS_INFO) << "FlexfecReceiveStream: " << config_.ToString();
 | 
|  }
 | 
|  
 | 
| @@ -101,8 +106,8 @@ FlexfecReceiveStream::~FlexfecReceiveStream() {
 | 
|    Stop();
 | 
|  }
 | 
|  
 | 
| -bool FlexfecReceiveStream::AddAndProcessReceivedPacket(const uint8_t* packet,
 | 
| -                                                       size_t packet_length) {
 | 
| +bool FlexfecReceiveStream::AddAndProcessReceivedPacket(
 | 
| +    RtpPacketReceived packet) {
 | 
|    {
 | 
|      rtc::CritScope cs(&crit_);
 | 
|      if (!started_)
 | 
| @@ -110,7 +115,7 @@ bool FlexfecReceiveStream::AddAndProcessReceivedPacket(const uint8_t* packet,
 | 
|    }
 | 
|    if (!receiver_)
 | 
|      return false;
 | 
| -  return receiver_->AddAndProcessReceivedPacket(packet, packet_length);
 | 
| +  return receiver_->AddAndProcessReceivedPacket(std::move(packet));
 | 
|  }
 | 
|  
 | 
|  void FlexfecReceiveStream::Start() {
 | 
| 
 |