Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1454)

Unified Diff: webrtc/modules/rtp_rtcp/source/rtcp_packet/remb.h

Issue 1590883002: [rtp_rtcp] rtcp::Remb moved into own file (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webrtc/modules/rtp_rtcp/source/rtcp_packet.cc ('k') | webrtc/modules/rtp_rtcp/source/rtcp_packet/remb.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/modules/rtp_rtcp/source/rtcp_packet/remb.h
diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_packet/tmmbn.h b/webrtc/modules/rtp_rtcp/source/rtcp_packet/remb.h
similarity index 53%
copy from webrtc/modules/rtp_rtcp/source/rtcp_packet/tmmbn.h
copy to webrtc/modules/rtp_rtcp/source/rtcp_packet/remb.h
index 82bf9dd9e96f7b154dac8b8e117bb578024b92ce..56dbb8b766b031d3157c94a441be11b7484bf54d 100644
--- a/webrtc/modules/rtp_rtcp/source/rtcp_packet/tmmbn.h
+++ b/webrtc/modules/rtp_rtcp/source/rtcp_packet/remb.h
@@ -6,11 +6,10 @@
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
- *
*/
-#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_REMB_H_
+#define WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_PACKET_REMB_H_
#include <vector>
#include "webrtc/base/basictypes.h"
@@ -19,21 +18,24 @@
namespace webrtc {
namespace rtcp {
-
-// Temporary Maximum Media Stream Bit Rate Notification (TMMBN) (RFC 5104).
-class Tmmbn : public RtcpPacket {
+// Receiver Estimated Max Bitrate (REMB) (draft-alvestrand-rmcat-remb).
+class Remb : public RtcpPacket {
public:
- Tmmbn() : RtcpPacket() {
- memset(&tmmbn_, 0, sizeof(tmmbn_));
+ Remb() : RtcpPacket() {
+ memset(&remb_, 0, sizeof(remb_));
+ memset(&remb_item_, 0, sizeof(remb_item_));
}
- virtual ~Tmmbn() {}
+ virtual ~Remb() {}
void From(uint32_t ssrc) {
- tmmbn_.SenderSSRC = ssrc;
+ remb_.SenderSSRC = ssrc;
+ }
+ void AppliesTo(uint32_t ssrc);
+
+ void WithBitrateBps(uint32_t bitrate_bps) {
+ remb_item_.BitRate = bitrate_bps;
}
- // 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 +44,17 @@ class Tmmbn : public RtcpPacket {
RtcpPacket::PacketReadyCallback* callback) const override;
private:
- static const int kMaxNumberOfTmmbrs = 50;
+ static const int kMaxNumberOfSsrcs = 0xff;
size_t BlockLength() const {
- const size_t kFciLen = 8;
- return kCommonFbFmtLength + kFciLen * tmmbn_items_.size();
+ return (remb_item_.NumberOfSSRCs + 5) * 4;
}
- RTCPUtility::RTCPPacketRTPFBTMMBN tmmbn_;
- std::vector<RTCPUtility::RTCPPacketRTPFBTMMBRItem> tmmbn_items_;
+ RTCPUtility::RTCPPacketPSFBAPP remb_;
+ RTCPUtility::RTCPPacketPSFBREMBItem remb_item_;
- RTC_DISALLOW_COPY_AND_ASSIGN(Tmmbn);
+ RTC_DISALLOW_COPY_AND_ASSIGN(Remb);
};
-
} // namespace rtcp
} // namespace webrtc
-#endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_PACKET_TMMBN_H_
+#endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_PACKET_REMB_H_
« no previous file with comments | « webrtc/modules/rtp_rtcp/source/rtcp_packet.cc ('k') | webrtc/modules/rtp_rtcp/source/rtcp_packet/remb.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698