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

Unified Diff: webrtc/modules/rtp_rtcp/source/rtp_header_extensions.h

Issue 2801733002: Move rtp header extension length check from Packet::FindExtension to ExtensionT::Parse (Closed)
Patch Set: Created 3 years, 8 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 | « no previous file | webrtc/modules/rtp_rtcp/source/rtp_header_extensions.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/modules/rtp_rtcp/source/rtp_header_extensions.h
diff --git a/webrtc/modules/rtp_rtcp/source/rtp_header_extensions.h b/webrtc/modules/rtp_rtcp/source/rtp_header_extensions.h
index ea6f9dbc9c140c24504ca3aaf98f40071e601216..543688c75e8c91ec36006ce8026b7c6e8e0ca7a9 100644
--- a/webrtc/modules/rtp_rtcp/source/rtp_header_extensions.h
+++ b/webrtc/modules/rtp_rtcp/source/rtp_header_extensions.h
@@ -13,6 +13,7 @@
#include <stdint.h>
#include "webrtc/api/video/video_rotation.h"
+#include "webrtc/base/array_view.h"
#include "webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h"
namespace webrtc {
@@ -24,7 +25,7 @@ class AbsoluteSendTime {
static constexpr const char* kUri =
"http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time";
- static bool Parse(const uint8_t* data, uint32_t* time_24bits);
+ static bool Parse(rtc::ArrayView<const uint8_t> data, uint32_t* time_24bits);
static bool Write(uint8_t* data, int64_t time_ms);
static constexpr uint32_t MsTo24Bits(int64_t time_ms) {
@@ -39,7 +40,7 @@ class AudioLevel {
static constexpr const char* kUri =
"urn:ietf:params:rtp-hdrext:ssrc-audio-level";
- static bool Parse(const uint8_t* data,
+ static bool Parse(rtc::ArrayView<const uint8_t> data,
bool* voice_activity,
uint8_t* audio_level);
static bool Write(uint8_t* data, bool voice_activity, uint8_t audio_level);
@@ -51,7 +52,7 @@ class TransmissionOffset {
static constexpr uint8_t kValueSizeBytes = 3;
static constexpr const char* kUri = "urn:ietf:params:rtp-hdrext:toffset";
- static bool Parse(const uint8_t* data, int32_t* rtp_time);
+ static bool Parse(rtc::ArrayView<const uint8_t> data, int32_t* rtp_time);
static bool Write(uint8_t* data, int32_t rtp_time);
};
@@ -62,7 +63,7 @@ class TransportSequenceNumber {
static constexpr const char* kUri =
"http://www.ietf.org/id/"
"draft-holmer-rmcat-transport-wide-cc-extensions-01";
- static bool Parse(const uint8_t* data, uint16_t* value);
+ static bool Parse(rtc::ArrayView<const uint8_t> data, uint16_t* value);
static bool Write(uint8_t* data, uint16_t value);
};
@@ -72,9 +73,9 @@ class VideoOrientation {
static constexpr uint8_t kValueSizeBytes = 1;
static constexpr const char* kUri = "urn:3gpp:video-orientation";
- static bool Parse(const uint8_t* data, VideoRotation* value);
+ static bool Parse(rtc::ArrayView<const uint8_t> data, VideoRotation* value);
static bool Write(uint8_t* data, VideoRotation value);
- static bool Parse(const uint8_t* data, uint8_t* value);
+ static bool Parse(rtc::ArrayView<const uint8_t> data, uint8_t* value);
static bool Write(uint8_t* data, uint8_t value);
};
@@ -92,7 +93,8 @@ class PlayoutDelayLimits {
// Maximum playout delay value in milliseconds.
static constexpr int kMaxMs = 0xfff * kGranularityMs; // 40950.
- static bool Parse(const uint8_t* data, PlayoutDelay* playout_delay);
+ static bool Parse(rtc::ArrayView<const uint8_t> data,
+ PlayoutDelay* playout_delay);
static bool Write(uint8_t* data, const PlayoutDelay& playout_delay);
};
« no previous file with comments | « no previous file | webrtc/modules/rtp_rtcp/source/rtp_header_extensions.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698