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); |
}; |