Style cleanups in rtp header extension traits:

renamed kName to kUri and make it more const.
remove IsSupportedBy to reduce header dependency.

BUG=webrtc:1994

Review-Url: https://codereview.webrtc.org/2457783005
Cr-Commit-Position: refs/heads/master@{#14825}
This commit is contained in:
danilchap 2016-10-28 07:08:58 -07:00 committed by Commit bot
parent af27ed01d7
commit e2a0177255
2 changed files with 30 additions and 73 deletions

View File

@ -31,11 +31,10 @@ namespace webrtc {
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// | ID | len=2 | absolute send time |
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
const char* AbsoluteSendTime::kName =
constexpr RTPExtensionType AbsoluteSendTime::kId;
constexpr uint8_t AbsoluteSendTime::kValueSizeBytes;
const char* const AbsoluteSendTime::kUri =
"http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time";
bool AbsoluteSendTime::IsSupportedFor(MediaType type) {
return true;
}
bool AbsoluteSendTime::Parse(const uint8_t* data, uint32_t* time_24bits) {
*time_24bits = ByteReader<uint32_t, 3>::ReadBigEndian(data);
@ -59,19 +58,10 @@ bool AbsoluteSendTime::Write(uint8_t* data, int64_t time_ms) {
// | ID | len=0 |V| level |
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
//
const char* AudioLevel::kName = "urn:ietf:params:rtp-hdrext:ssrc-audio-level";
bool AudioLevel::IsSupportedFor(MediaType type) {
switch (type) {
case MediaType::ANY:
case MediaType::AUDIO:
return true;
case MediaType::VIDEO:
case MediaType::DATA:
return false;
}
RTC_NOTREACHED();
return false;
}
constexpr RTPExtensionType AudioLevel::kId;
constexpr uint8_t AudioLevel::kValueSizeBytes;
const char* const AudioLevel::kUri =
"urn:ietf:params:rtp-hdrext:ssrc-audio-level";
bool AudioLevel::Parse(const uint8_t* data,
bool* voice_activity,
@ -105,19 +95,10 @@ bool AudioLevel::Write(uint8_t* data,
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// | ID | len=2 | transmission offset |
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
const char* TransmissionOffset::kName = "urn:ietf:params:rtp-hdrext:toffset";
bool TransmissionOffset::IsSupportedFor(MediaType type) {
switch (type) {
case MediaType::ANY:
case MediaType::VIDEO:
return true;
case MediaType::AUDIO:
case MediaType::DATA:
return false;
}
RTC_NOTREACHED();
return false;
}
constexpr RTPExtensionType TransmissionOffset::kId;
constexpr uint8_t TransmissionOffset::kValueSizeBytes;
const char* const TransmissionOffset::kUri =
"urn:ietf:params:rtp-hdrext:toffset";
bool TransmissionOffset::Parse(const uint8_t* data, int32_t* rtp_time) {
*rtp_time = ByteReader<int32_t, 3>::ReadBigEndian(data);
@ -135,11 +116,10 @@ bool TransmissionOffset::Write(uint8_t* data, int32_t rtp_time) {
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// | ID | L=1 |transport wide sequence number |
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
const char* TransportSequenceNumber::kName =
constexpr RTPExtensionType TransportSequenceNumber::kId;
constexpr uint8_t TransportSequenceNumber::kValueSizeBytes;
const char* const TransportSequenceNumber::kUri =
"http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions";
bool TransportSequenceNumber::IsSupportedFor(MediaType type) {
return true;
}
bool TransportSequenceNumber::Parse(const uint8_t* data, uint16_t* value) {
*value = ByteReader<uint16_t>::ReadBigEndian(data);
@ -162,19 +142,9 @@ bool TransportSequenceNumber::Write(uint8_t* data, uint16_t value) {
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// | ID | len=0 |0 0 0 0 C F R R|
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
const char* VideoOrientation::kName = "urn:3gpp:video-orientation";
bool VideoOrientation::IsSupportedFor(MediaType type) {
switch (type) {
case MediaType::ANY:
case MediaType::VIDEO:
return true;
case MediaType::AUDIO:
case MediaType::DATA:
return false;
}
RTC_NOTREACHED();
return false;
}
constexpr RTPExtensionType VideoOrientation::kId;
constexpr uint8_t VideoOrientation::kValueSizeBytes;
const char* const VideoOrientation::kUri = "urn:3gpp:video-orientation";
bool VideoOrientation::Parse(const uint8_t* data, VideoRotation* rotation) {
*rotation = ConvertCVOByteToVideoRotation(data[0]);
@ -203,20 +173,8 @@ bool VideoOrientation::Write(uint8_t* data, uint8_t value) {
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
constexpr RTPExtensionType PlayoutDelayLimits::kId;
constexpr uint8_t PlayoutDelayLimits::kValueSizeBytes;
const char* PlayoutDelayLimits::kName =
const char* const PlayoutDelayLimits::kUri =
"http://www.webrtc.org/experiments/rtp-hdrext/playout-delay";
bool PlayoutDelayLimits::IsSupportedFor(MediaType type) {
switch (type) {
case MediaType::ANY:
case MediaType::VIDEO:
return true;
case MediaType::AUDIO:
case MediaType::DATA:
return false;
}
RTC_NOTREACHED();
return false;
}
bool PlayoutDelayLimits::Parse(const uint8_t* data,
PlayoutDelay* playout_delay) {

View File

@ -11,7 +11,6 @@
#define WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_HEADER_EXTENSIONS_H_
#include "webrtc/base/basictypes.h"
#include "webrtc/call.h"
#include "webrtc/common_video/rotation.h"
#include "webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h"
@ -21,8 +20,8 @@ class AbsoluteSendTime {
public:
static constexpr RTPExtensionType kId = kRtpExtensionAbsoluteSendTime;
static constexpr uint8_t kValueSizeBytes = 3;
static const char* kName;
static bool IsSupportedFor(MediaType type);
static const char* const kUri;
static bool Parse(const uint8_t* data, uint32_t* time_24bits);
static bool Write(uint8_t* data, int64_t time_ms);
@ -35,8 +34,8 @@ class AudioLevel {
public:
static constexpr RTPExtensionType kId = kRtpExtensionAudioLevel;
static constexpr uint8_t kValueSizeBytes = 1;
static const char* kName;
static bool IsSupportedFor(MediaType type);
static const char* const kUri;
static bool Parse(const uint8_t* data,
bool* voice_activity,
uint8_t* audio_level);
@ -47,8 +46,8 @@ class TransmissionOffset {
public:
static constexpr RTPExtensionType kId = kRtpExtensionTransmissionTimeOffset;
static constexpr uint8_t kValueSizeBytes = 3;
static const char* kName;
static bool IsSupportedFor(MediaType type);
static const char* const kUri;
static bool Parse(const uint8_t* data, int32_t* rtp_time);
static bool Write(uint8_t* data, int32_t rtp_time);
};
@ -57,8 +56,8 @@ class TransportSequenceNumber {
public:
static constexpr RTPExtensionType kId = kRtpExtensionTransportSequenceNumber;
static constexpr uint8_t kValueSizeBytes = 2;
static const char* kName;
static bool IsSupportedFor(MediaType type);
static const char* const kUri;
static bool Parse(const uint8_t* data, uint16_t* value);
static bool Write(uint8_t* data, uint16_t value);
};
@ -67,8 +66,8 @@ class VideoOrientation {
public:
static constexpr RTPExtensionType kId = kRtpExtensionVideoRotation;
static constexpr uint8_t kValueSizeBytes = 1;
static const char* kName;
static bool IsSupportedFor(MediaType type);
static const char* const kUri;
static bool Parse(const uint8_t* data, VideoRotation* value);
static bool Write(uint8_t* data, VideoRotation value);
static bool Parse(const uint8_t* data, uint8_t* value);
@ -79,8 +78,8 @@ class PlayoutDelayLimits {
public:
static constexpr RTPExtensionType kId = kRtpExtensionPlayoutDelay;
static constexpr uint8_t kValueSizeBytes = 3;
static const char* kName;
static bool IsSupportedFor(MediaType type);
static const char* const kUri;
// Playout delay in milliseconds. A playout delay limit (min or max)
// has 12 bits allocated. This allows a range of 0-4095 values which
// translates to a range of 0-40950 in milliseconds.