Index: webrtc/modules/rtp_rtcp/source/rtp_sender.h |
diff --git a/webrtc/modules/rtp_rtcp/source/rtp_sender.h b/webrtc/modules/rtp_rtcp/source/rtp_sender.h |
index 09bcebc6403f013f576b1d49a54ca3c0dde5fb29..0886cc3ada03da46dc3126f4068ac82a097e148c 100644 |
--- a/webrtc/modules/rtp_rtcp/source/rtp_sender.h |
+++ b/webrtc/modules/rtp_rtcp/source/rtp_sender.h |
@@ -35,6 +35,7 @@ |
namespace webrtc { |
+class OverheadSizeObserver; |
class RateLimiter; |
class RtcEventLog; |
class RtpPacketToSend; |
@@ -57,7 +58,8 @@ class RTPSender { |
SendSideDelayObserver* send_side_delay_observer, |
RtcEventLog* event_log, |
SendPacketObserver* send_packet_observer, |
- RateLimiter* nack_rate_limiter); |
+ RateLimiter* nack_rate_limiter, |
+ OverheadSizeObserver* overhead_size_observer); |
~RTPSender(); |
@@ -210,6 +212,8 @@ class RTPSender { |
void SetRtxRtpState(const RtpState& rtp_state); |
RtpState GetRtxRtpState() const; |
+ void SetTransportOverhead(int transport_overhead); |
+ |
protected: |
int32_t CheckPayloadType(int8_t payload_type, RtpVideoCodecTypes* video_type); |
@@ -255,6 +259,10 @@ class RTPSender { |
bool is_retransmit); |
bool IsFecPacket(const RtpPacketToSend& packet) const; |
+ void AddPacketToTransportFeedback(uint16_t packet_id, |
+ RtpPacketToSend* packet, |
+ int probe_cluster_id); |
+ |
Clock* const clock_; |
const int64_t clock_delta_ms_; |
Random random_ GUARDED_BY(send_critsect_); |
@@ -320,8 +328,11 @@ class RTPSender { |
uint32_t ssrc_rtx_ GUARDED_BY(send_critsect_); |
// Mapping rtx_payload_type_map_[associated] = rtx. |
std::map<int8_t, int8_t> rtx_payload_type_map_ GUARDED_BY(send_critsect_); |
+ size_t transport_overhead_bytes_per_packet_ GUARDED_BY(send_critsect_); |
+ size_t rtp_overhead_bytes_per_packet_ GUARDED_BY(send_critsect_); |
RateLimiter* const retransmission_rate_limiter_; |
+ OverheadSizeObserver* overhead_size_observer_; |
RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(RTPSender); |
}; |