Index: webrtc/modules/rtp_rtcp/interface/rtp_rtcp_defines.h |
diff --git a/webrtc/modules/rtp_rtcp/interface/rtp_rtcp_defines.h b/webrtc/modules/rtp_rtcp/interface/rtp_rtcp_defines.h |
index 73fb96cc02a51c893a18a0c60715d74cc0816dd4..9ff7406b4f6120c7cafc1c67eb2325e74b57d1c9 100644 |
--- a/webrtc/modules/rtp_rtcp/interface/rtp_rtcp_defines.h |
+++ b/webrtc/modules/rtp_rtcp/interface/rtp_rtcp_defines.h |
@@ -395,5 +395,36 @@ struct RtpPacketLossStats { |
uint64_t multiple_packet_loss_packet_count; |
}; |
+class RtpPacketSender { |
+ public: |
+ RtpPacketSender() {} |
+ virtual ~RtpPacketSender() {} |
+ |
+ enum Priority { |
+ kHighPriority = 0, // Pass through; will be sent immediately. |
+ kNormalPriority = 2, // Put in back of the line. |
+ kLowPriority = 3, // Put in back of the low priority line. |
+ }; |
+ // Low priority packets are mixed with the normal priority packets |
+ // while we are paused. |
+ |
+ // Returns true if we send the packet now, else it will add the packet |
+ // information to the queue and call TimeToSendPacket when it's time to send. |
+ virtual bool SendPacket(Priority priority, |
+ uint32_t ssrc, |
+ uint16_t sequence_number, |
+ int64_t capture_time_ms, |
+ size_t bytes, |
+ bool retransmission) = 0; |
+}; |
+ |
+class TransportSequenceNumberAllocator { |
+ public: |
+ TransportSequenceNumberAllocator() {} |
+ virtual ~TransportSequenceNumberAllocator() {} |
+ |
+ virtual uint16_t AllocateSequenceNumber() = 0; |
+}; |
+ |
} // namespace webrtc |
#endif // WEBRTC_MODULES_RTP_RTCP_INTERFACE_RTP_RTCP_DEFINES_H_ |