Simplify registration of RTP-header extensions.

Removes per-extension functions in ViEChannel/ViEReceiver and instead
register extensions directly on the RTP module by mapping extension
string to RTP-header-extension type.

BUG=webrtc:5494
R=danilchap@webrtc.org, stefan@webrtc.org

Review URL: https://codereview.webrtc.org/1740133002 .

Cr-Commit-Position: refs/heads/master@{#11786}
This commit is contained in:
Peter Boström
2016-02-26 16:26:20 +01:00
parent ff474da11b
commit 9c01725e37
8 changed files with 34 additions and 109 deletions

View File

@ -13,10 +13,12 @@
#include <string.h>
#include <set>
#include <string>
#include "webrtc/base/checks.h"
#include "webrtc/base/logging.h"
#include "webrtc/common_types.h"
#include "webrtc/config.h"
#include "webrtc/system_wrappers/include/trace.h"
#ifdef _WIN32
@ -26,6 +28,21 @@
namespace webrtc {
RTPExtensionType StringToRtpExtensionType(const std::string& extension) {
if (extension == RtpExtension::kTOffset)
return kRtpExtensionTransmissionTimeOffset;
if (extension == RtpExtension::kAudioLevel)
return kRtpExtensionAudioLevel;
if (extension == RtpExtension::kAbsSendTime)
return kRtpExtensionAbsoluteSendTime;
if (extension == RtpExtension::kVideoRotation)
return kRtpExtensionVideoRotation;
if (extension == RtpExtension::kTransportSequenceNumber)
return kRtpExtensionTransportSequenceNumber;
RTC_NOTREACHED() << "Looking up unsupported RTP extension.";
return kRtpExtensionNone;
}
RtpRtcp::Configuration::Configuration()
: audio(false),
receiver_only(false),