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 0d30848f965cd09776e13163eb44e11c85db817e..c60f29050d5244fc6ea88d8648c7fd1c9762d56e 100644 |
--- a/webrtc/modules/rtp_rtcp/source/rtp_header_extensions.h |
+++ b/webrtc/modules/rtp_rtcp/source/rtp_header_extensions.h |
@@ -11,6 +11,7 @@ |
#define WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_HEADER_EXTENSIONS_H_ |
#include <stdint.h> |
+#include <string> |
#include "webrtc/api/video/video_content_type.h" |
#include "webrtc/api/video/video_rotation.h" |
@@ -111,5 +112,31 @@ class VideoContentTypeExtension { |
static bool Write(uint8_t* data, VideoContentType content_type); |
}; |
+class RtpStreamId { |
+ public: |
+ static constexpr RTPExtensionType kId = kRtpExtensionRtpStreamId; |
+ // TODO(danilchap): Implement write support of dynamic size extension that |
+ // allows to remove the ValueSize constant. |
+ static constexpr uint8_t kValueSizeBytes = 1; |
+ static constexpr const char* kUri = |
+ "urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id"; |
+ |
+ static bool Parse(rtc::ArrayView<const uint8_t> data, StreamId* rid); |
+ static bool Parse(rtc::ArrayView<const uint8_t> data, std::string* rid); |
+}; |
+ |
+class RepairedRtpStreamId { |
+ public: |
+ static constexpr RTPExtensionType kId = kRtpExtensionRepairedRtpStreamId; |
+ // TODO(danilchap): Implement write support of dynamic size extension that |
+ // allows to remove the ValueSize constant. |
+ static constexpr uint8_t kValueSizeBytes = 1; |
+ static constexpr const char* kUri = |
+ "urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id"; |
+ |
+ static bool Parse(rtc::ArrayView<const uint8_t> data, StreamId* rid); |
+ static bool Parse(rtc::ArrayView<const uint8_t> data, std::string* rid); |
+}; |
+ |
} // namespace webrtc |
#endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_HEADER_EXTENSIONS_H_ |