Remove hardcoded kValueSizeBytes values from variable-length header extensions.

Since the RtpStreamId and RepairedRtpStreamId extensions can have variable
length, it makes no sense for them to have a constant valueSize field.
The header length calculation in RtpHeaderExtensionMap needed to be changed
for this because it previously worked with the assumption that all header
types have a constant size. Now it's the caller's job to specify the length
of the extensions that it might use.

BUG=webrtc:7433

Review-Url: https://codereview.webrtc.org/2867713003
Cr-Commit-Position: refs/heads/master@{#18179}
This commit is contained in:
erikvarga
2017-05-17 05:08:38 -07:00
committed by Commit bot
parent b30843a2fa
commit 2788373528
18 changed files with 133 additions and 90 deletions

View File

@ -125,11 +125,6 @@ class RtpRtcp : public Module {
// Sets the maximum size of an RTP packet, including RTP headers.
virtual void SetMaxRtpPacketSize(size_t size) = 0;
// Returns max payload length.
// Does not account for RTP headers and FEC/ULP/RED overhead (when FEC is
// enabled).
virtual size_t MaxPayloadSize() const = 0;
// Returns max RTP packet size. Takes into account RTP headers and
// FEC/ULP/RED overhead (when FEC is enabled).
virtual size_t MaxRtpPacketSize() const = 0;