Chromium Code Reviews| Index: webrtc/modules/rtp_rtcp/include/flexfec_receiver.h | 
| diff --git a/webrtc/modules/rtp_rtcp/include/flexfec_receiver.h b/webrtc/modules/rtp_rtcp/include/flexfec_receiver.h | 
| index dc90f045d58c2d864034a76da32e81e62bb27aa5..63112f453dc17bb1bc620a13475265e237ac5514 100644 | 
| --- a/webrtc/modules/rtp_rtcp/include/flexfec_receiver.h | 
| +++ b/webrtc/modules/rtp_rtcp/include/flexfec_receiver.h | 
| @@ -16,13 +16,15 @@ | 
| #include "webrtc/base/basictypes.h" | 
| #include "webrtc/base/sequenced_task_checker.h" | 
| #include "webrtc/call/call.h" | 
| -#include "webrtc/modules/rtp_rtcp/include/flexfec_receiver.h" | 
| #include "webrtc/modules/rtp_rtcp/include/ulpfec_receiver.h" | 
| #include "webrtc/modules/rtp_rtcp/source/forward_error_correction.h" | 
| +#include "webrtc/modules/rtp_rtcp/source/rtp_packet_received.h" | 
| #include "webrtc/system_wrappers/include/clock.h" | 
| namespace webrtc { | 
| +class RemoteBitrateEstimator; | 
| + | 
| // Callback interface for packets recovered by FlexFEC. The implementation | 
| // should be able to demultiplex the recovered RTP packets based on SSRC. | 
| class RecoveredPacketReceiver { | 
| @@ -37,19 +39,20 @@ class FlexfecReceiver { | 
| public: | 
| FlexfecReceiver(uint32_t ssrc, | 
| uint32_t protected_media_ssrc, | 
| - RecoveredPacketReceiver* callback); | 
| + RecoveredPacketReceiver* recovered_packet_receiver, | 
| + RemoteBitrateEstimator* remote_bitrate_estimator); | 
| ~FlexfecReceiver(); | 
| // Inserts a received packet (can be either media or FlexFEC) into the | 
| // internal buffer, and sends the received packets to the erasure code. | 
| // All newly recovered packets are sent back through the callback. | 
| - bool AddAndProcessReceivedPacket(const uint8_t* packet, size_t packet_length); | 
| + bool AddAndProcessReceivedPacket(RtpPacketReceived packet); | 
| // Returns a counter describing the added and recovered packets. | 
| FecPacketCounter GetPacketCounter() const; | 
| private: | 
| - bool AddReceivedPacket(const uint8_t* packet, size_t packet_length); | 
| + bool AddReceivedPacket(RtpPacketReceived packet); | 
| bool ProcessReceivedPackets(); | 
| // Config. | 
| @@ -60,7 +63,10 @@ class FlexfecReceiver { | 
| std::unique_ptr<ForwardErrorCorrection> erasure_code_; | 
| ForwardErrorCorrection::ReceivedPacketList received_packets_; | 
| ForwardErrorCorrection::RecoveredPacketList recovered_packets_; | 
| - RecoveredPacketReceiver* const callback_; | 
| + RecoveredPacketReceiver* const recovered_packet_receiver_; | 
| + | 
| + // BWE. | 
| + RemoteBitrateEstimator* remote_bitrate_estimator_; | 
| 
 
danilchap
2016/12/13 14:11:24
* const
 
brandtr
2016/12/14 12:55:49
N/A.
 
 | 
| // Logging and stats. | 
| Clock* const clock_; |