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 06294b479708cf2b7a4f0664adda697ab9d6fa8f..8000cf1bf49bad2caf82c231a4dfec676008cfef 100644 |
| --- a/webrtc/modules/rtp_rtcp/include/flexfec_receiver.h |
| +++ b/webrtc/modules/rtp_rtcp/include/flexfec_receiver.h |
| @@ -23,6 +23,9 @@ |
| namespace webrtc { |
| +class RemoteBitrateEstimator; |
| +class RtpPacketReceived; |
| + |
| // 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 +40,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); |
|
danilchap
2016/12/06 15:04:30
to pass by value forward declaration is not enough
brandtr
2016/12/12 13:51:07
Done.
|
| // 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 +64,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_; |
| // Logging and stats. |
| Clock* const clock_; |