diff options
Diffstat (limited to 'modules/rtp_rtcp/source/rtp_header_extensions.h')
-rw-r--r-- | modules/rtp_rtcp/source/rtp_header_extensions.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/modules/rtp_rtcp/source/rtp_header_extensions.h b/modules/rtp_rtcp/source/rtp_header_extensions.h index f6e7a579ab..b47824afdb 100644 --- a/modules/rtp_rtcp/source/rtp_header_extensions.h +++ b/modules/rtp_rtcp/source/rtp_header_extensions.h @@ -14,6 +14,7 @@ #include <stdint.h> #include <string> +#include <vector> #include "api/array_view.h" #include "api/rtp_headers.h" @@ -77,6 +78,20 @@ class AudioLevel { uint8_t audio_level); }; +class CsrcAudioLevel { + public: + static constexpr RTPExtensionType kId = kRtpExtensionCsrcAudioLevel; + static constexpr uint8_t kMaxValueSizeBytes = 15; + static constexpr const char kUri[] = + "urn:ietf:params:rtp-hdrext:csrc-audio-level"; + + static bool Parse(rtc::ArrayView<const uint8_t> data, + std::vector<uint8_t>* csrc_audio_levels); + static size_t ValueSize(rtc::ArrayView<const uint8_t> csrc_audio_levels); + static bool Write(rtc::ArrayView<uint8_t> data, + rtc::ArrayView<const uint8_t> csrc_audio_levels); +}; + class TransmissionOffset { public: using value_type = int32_t; |