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

Unified Diff: webrtc/modules/rtp_rtcp/source/flexfec_sender.cc

Issue 2867713003: Remove hardcoded kValueSizeBytes values from variable-length header extensions. (Closed)
Patch Set: Patch 5 Created 3 years, 7 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
Index: webrtc/modules/rtp_rtcp/source/flexfec_sender.cc
diff --git a/webrtc/modules/rtp_rtcp/source/flexfec_sender.cc b/webrtc/modules/rtp_rtcp/source/flexfec_sender.cc
index 4aec05662fdaae852192570d7c9ca64dcb4a2776..a2c9ae39adc6bbdc2d16b4f960c7ce2e65f3baa0 100644
--- a/webrtc/modules/rtp_rtcp/source/flexfec_sender.cc
+++ b/webrtc/modules/rtp_rtcp/source/flexfec_sender.cc
@@ -64,6 +64,7 @@ FlexfecSender::FlexfecSender(
uint32_t ssrc,
uint32_t protected_media_ssrc,
const std::vector<RtpExtension>& rtp_header_extensions,
+ rtc::ArrayView<const RtpExtensionSize> extension_sizes,
Clock* clock)
: clock_(clock),
random_(clock_->TimeInMicroseconds()),
@@ -76,7 +77,9 @@ FlexfecSender::FlexfecSender(
protected_media_ssrc_(protected_media_ssrc),
seq_num_(random_.Rand(1, kMaxInitRtpSeqNumber)),
ulpfec_generator_(ForwardErrorCorrection::CreateFlexfec()),
- rtp_header_extension_map_(RegisterBweExtensions(rtp_header_extensions)) {
+ rtp_header_extension_map_(RegisterBweExtensions(rtp_header_extensions)),
+ header_extensions_size_(
+ rtp_header_extension_map_.GetTotalLengthInBytes(extension_sizes)) {
// This object should not have been instantiated if FlexFEC is disabled.
RTC_DCHECK_GE(payload_type, 0);
RTC_DCHECK_LE(payload_type, 127);
@@ -148,8 +151,7 @@ std::vector<std::unique_ptr<RtpPacketToSend>> FlexfecSender::GetFecPackets() {
// The overhead is BWE RTP header extensions and FlexFEC header.
size_t FlexfecSender::MaxPacketOverhead() const {
- return rtp_header_extension_map_.GetTotalLengthInBytes() +
- kFlexfecMaxHeaderSize;
+ return header_extensions_size_ + kFlexfecMaxHeaderSize;
}
} // namespace webrtc

Powered by Google App Engine
This is Rietveld 408576698