Index: webrtc/modules/rtp_rtcp/source/rtcp_packet/fir.h |
diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_packet/tmmbn.h b/webrtc/modules/rtp_rtcp/source/rtcp_packet/fir.h |
similarity index 52% |
copy from webrtc/modules/rtp_rtcp/source/rtcp_packet/tmmbn.h |
copy to webrtc/modules/rtp_rtcp/source/rtcp_packet/fir.h |
index 82bf9dd9e96f7b154dac8b8e117bb578024b92ce..c2b897e46e2be678cd077faba0a45a5779e3b3e6 100644 |
--- a/webrtc/modules/rtp_rtcp/source/rtcp_packet/tmmbn.h |
+++ b/webrtc/modules/rtp_rtcp/source/rtcp_packet/fir.h |
@@ -9,10 +9,9 @@ |
* |
*/ |
-#ifndef WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_PACKET_TMMBN_H_ |
-#define WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_PACKET_TMMBN_H_ |
+#ifndef WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_PACKET_FIR_H_ |
+#define WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_PACKET_FIR_H_ |
-#include <vector> |
#include "webrtc/base/basictypes.h" |
#include "webrtc/modules/rtp_rtcp/source/rtcp_packet.h" |
#include "webrtc/modules/rtp_rtcp/source/rtcp_utility.h" |
@@ -20,20 +19,25 @@ |
namespace webrtc { |
namespace rtcp { |
-// Temporary Maximum Media Stream Bit Rate Notification (TMMBN) (RFC 5104). |
-class Tmmbn : public RtcpPacket { |
+// Full intra request (FIR) (RFC 5104). |
+class Fir : public RtcpPacket { |
public: |
- Tmmbn() : RtcpPacket() { |
- memset(&tmmbn_, 0, sizeof(tmmbn_)); |
+ Fir() : RtcpPacket() { |
+ memset(&fir_, 0, sizeof(fir_)); |
+ memset(&fir_item_, 0, sizeof(fir_item_)); |
} |
- virtual ~Tmmbn() {} |
+ virtual ~Fir() {} |
void From(uint32_t ssrc) { |
- tmmbn_.SenderSSRC = ssrc; |
+ fir_.SenderSSRC = ssrc; |
+ } |
+ void To(uint32_t ssrc) { |
+ fir_item_.SSRC = ssrc; |
+ } |
+ void WithCommandSeqNum(uint8_t seq_num) { |
+ fir_item_.CommandSequenceNumber = seq_num; |
} |
- // Max 50 TMMBR can be added per TMMBN. |
- bool WithTmmbr(uint32_t ssrc, uint32_t bitrate_kbps, uint16_t overhead); |
protected: |
bool Create(uint8_t* packet, |
@@ -42,19 +46,15 @@ class Tmmbn : public RtcpPacket { |
RtcpPacket::PacketReadyCallback* callback) const override; |
private: |
- static const int kMaxNumberOfTmmbrs = 50; |
- |
size_t BlockLength() const { |
- const size_t kFciLen = 8; |
- return kCommonFbFmtLength + kFciLen * tmmbn_items_.size(); |
+ const size_t kFciLength = 8; |
+ return kCommonFbFmtLength + kFciLength; |
} |
- RTCPUtility::RTCPPacketRTPFBTMMBN tmmbn_; |
- std::vector<RTCPUtility::RTCPPacketRTPFBTMMBRItem> tmmbn_items_; |
- |
- RTC_DISALLOW_COPY_AND_ASSIGN(Tmmbn); |
+ RTCPUtility::RTCPPacketPSFBFIR fir_; |
+ RTCPUtility::RTCPPacketPSFBFIRItem fir_item_; |
}; |
} // namespace rtcp |
} // namespace webrtc |
-#endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_PACKET_TMMBN_H_ |
+#endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_PACKET_FIR_H_ |