Remove handling unused rtcp packets.

App, ExtendedJitterReport and VoipMetric in ExtenedReports are not
used when received (no callbacks, no state change), so removed.

BUG=webrtc:5260

Review-Url: https://codereview.webrtc.org/2320703003
Cr-Commit-Position: refs/heads/master@{#14204}
This commit is contained in:
danilchap
2016-09-13 23:54:48 -07:00
committed by Commit bot
parent cdf37a9293
commit 17366bc090
4 changed files with 2 additions and 167 deletions

View File

@ -314,9 +314,6 @@ int32_t RTCPReceiver::IncomingRTCPPacket(
case RTCPPacketTypes::kXrDlrrReportBlock: case RTCPPacketTypes::kXrDlrrReportBlock:
HandleXrDlrrReportBlock(*rtcpParser, rtcpPacketInformation); HandleXrDlrrReportBlock(*rtcpParser, rtcpPacketInformation);
break; break;
case RTCPPacketTypes::kXrVoipMetric:
HandleXRVOIPMetric(*rtcpParser, rtcpPacketInformation);
break;
case RTCPPacketTypes::kBye: case RTCPPacketTypes::kBye:
HandleBYE(*rtcpParser); HandleBYE(*rtcpParser);
break; break;
@ -341,23 +338,12 @@ int32_t RTCPReceiver::IncomingRTCPPacket(
case RTCPPacketTypes::kPsfbRpsi: case RTCPPacketTypes::kPsfbRpsi:
HandleRPSI(*rtcpParser, rtcpPacketInformation); HandleRPSI(*rtcpParser, rtcpPacketInformation);
break; break;
case RTCPPacketTypes::kExtendedIj:
HandleIJ(*rtcpParser, rtcpPacketInformation);
break;
case RTCPPacketTypes::kPsfbFir: case RTCPPacketTypes::kPsfbFir:
HandleFIR(*rtcpParser, rtcpPacketInformation); HandleFIR(*rtcpParser, rtcpPacketInformation);
break; break;
case RTCPPacketTypes::kPsfbApp: case RTCPPacketTypes::kPsfbApp:
HandlePsfbApp(*rtcpParser, rtcpPacketInformation); HandlePsfbApp(*rtcpParser, rtcpPacketInformation);
break; break;
case RTCPPacketTypes::kApp:
// generic application messages
HandleAPP(*rtcpParser, rtcpPacketInformation);
break;
case RTCPPacketTypes::kAppItem:
// generic application messages
HandleAPPItem(*rtcpParser, rtcpPacketInformation);
break;
case RTCPPacketTypes::kTransportFeedback: case RTCPPacketTypes::kTransportFeedback:
HandleTransportFeedback(rtcpParser, &rtcpPacketInformation); HandleTransportFeedback(rtcpParser, &rtcpPacketInformation);
break; break;
@ -909,49 +895,6 @@ void RTCPReceiver::HandleXrDlrrReportBlockItem(
rtcpPacketInformation.rtcpPacketTypeFlags |= kRtcpXrDlrrReportBlock; rtcpPacketInformation.rtcpPacketTypeFlags |= kRtcpXrDlrrReportBlock;
} }
void RTCPReceiver::HandleXRVOIPMetric(
RTCPUtility::RTCPParserV2& rtcpParser,
RTCPPacketInformation& rtcpPacketInformation) {
const RTCPUtility::RTCPPacket& rtcpPacket = rtcpParser.Packet();
if (rtcpPacket.XRVOIPMetricItem.SSRC == main_ssrc_) {
// Store VoIP metrics block if it's about me
// from OriginatorSSRC do we filter it?
// rtcpPacket.XR.OriginatorSSRC;
RTCPVoIPMetric receivedVoIPMetrics;
receivedVoIPMetrics.burstDensity = rtcpPacket.XRVOIPMetricItem.burstDensity;
receivedVoIPMetrics.burstDuration =
rtcpPacket.XRVOIPMetricItem.burstDuration;
receivedVoIPMetrics.discardRate = rtcpPacket.XRVOIPMetricItem.discardRate;
receivedVoIPMetrics.endSystemDelay =
rtcpPacket.XRVOIPMetricItem.endSystemDelay;
receivedVoIPMetrics.extRfactor = rtcpPacket.XRVOIPMetricItem.extRfactor;
receivedVoIPMetrics.gapDensity = rtcpPacket.XRVOIPMetricItem.gapDensity;
receivedVoIPMetrics.gapDuration = rtcpPacket.XRVOIPMetricItem.gapDuration;
receivedVoIPMetrics.Gmin = rtcpPacket.XRVOIPMetricItem.Gmin;
receivedVoIPMetrics.JBabsMax = rtcpPacket.XRVOIPMetricItem.JBabsMax;
receivedVoIPMetrics.JBmax = rtcpPacket.XRVOIPMetricItem.JBmax;
receivedVoIPMetrics.JBnominal = rtcpPacket.XRVOIPMetricItem.JBnominal;
receivedVoIPMetrics.lossRate = rtcpPacket.XRVOIPMetricItem.lossRate;
receivedVoIPMetrics.MOSCQ = rtcpPacket.XRVOIPMetricItem.MOSCQ;
receivedVoIPMetrics.MOSLQ = rtcpPacket.XRVOIPMetricItem.MOSLQ;
receivedVoIPMetrics.noiseLevel = rtcpPacket.XRVOIPMetricItem.noiseLevel;
receivedVoIPMetrics.RERL = rtcpPacket.XRVOIPMetricItem.RERL;
receivedVoIPMetrics.Rfactor = rtcpPacket.XRVOIPMetricItem.Rfactor;
receivedVoIPMetrics.roundTripDelay =
rtcpPacket.XRVOIPMetricItem.roundTripDelay;
receivedVoIPMetrics.RXconfig = rtcpPacket.XRVOIPMetricItem.RXconfig;
receivedVoIPMetrics.signalLevel = rtcpPacket.XRVOIPMetricItem.signalLevel;
rtcpPacketInformation.AddVoIPMetric(&receivedVoIPMetrics);
rtcpPacketInformation.rtcpPacketTypeFlags |=
kRtcpXrVoipMetric; // received signal
}
rtcpParser.Iterate();
}
void RTCPReceiver::HandlePLI(RTCPUtility::RTCPParserV2& rtcpParser, void RTCPReceiver::HandlePLI(RTCPUtility::RTCPParserV2& rtcpParser,
RTCPPacketInformation& rtcpPacketInformation) { RTCPPacketInformation& rtcpPacketInformation) {
const RTCPUtility::RTCPPacket& rtcpPacket = rtcpParser.Packet(); const RTCPUtility::RTCPPacket& rtcpPacket = rtcpParser.Packet();
@ -1118,24 +1061,6 @@ void RTCPReceiver::HandlePsfbApp(RTCPUtility::RTCPParserV2& rtcpParser,
} }
} }
void RTCPReceiver::HandleIJ(RTCPUtility::RTCPParserV2& rtcpParser,
RTCPPacketInformation& rtcpPacketInformation) {
const RTCPUtility::RTCPPacket& rtcpPacket = rtcpParser.Packet();
RTCPUtility::RTCPPacketTypes pktType = rtcpParser.Iterate();
while (pktType == RTCPPacketTypes::kExtendedIjItem) {
HandleIJItem(rtcpPacket, rtcpPacketInformation);
pktType = rtcpParser.Iterate();
}
}
void RTCPReceiver::HandleIJItem(const RTCPUtility::RTCPPacket& rtcpPacket,
RTCPPacketInformation& rtcpPacketInformation) {
rtcpPacketInformation.rtcpPacketTypeFlags |= kRtcpTransmissionTimeOffset;
rtcpPacketInformation.interArrivalJitter =
rtcpPacket.ExtendedJitterReportItem.Jitter;
}
void RTCPReceiver::HandleREMBItem( void RTCPReceiver::HandleREMBItem(
RTCPUtility::RTCPParserV2& rtcpParser, RTCPUtility::RTCPParserV2& rtcpParser,
RTCPPacketInformation& rtcpPacketInformation) { RTCPPacketInformation& rtcpPacketInformation) {
@ -1190,27 +1115,6 @@ void RTCPReceiver::HandleFIRItem(RTCPReceiveInformation* receiveInfo,
} }
} }
void RTCPReceiver::HandleAPP(RTCPUtility::RTCPParserV2& rtcpParser,
RTCPPacketInformation& rtcpPacketInformation) {
const RTCPUtility::RTCPPacket& rtcpPacket = rtcpParser.Packet();
rtcpPacketInformation.rtcpPacketTypeFlags |= kRtcpApp;
rtcpPacketInformation.applicationSubType = rtcpPacket.APP.SubType;
rtcpPacketInformation.applicationName = rtcpPacket.APP.Name;
rtcpParser.Iterate();
}
void RTCPReceiver::HandleAPPItem(RTCPUtility::RTCPParserV2& rtcpParser,
RTCPPacketInformation& rtcpPacketInformation) {
const RTCPUtility::RTCPPacket& rtcpPacket = rtcpParser.Packet();
rtcpPacketInformation.AddApplicationData(rtcpPacket.APP.Data,
rtcpPacket.APP.Size);
rtcpParser.Iterate();
}
void RTCPReceiver::HandleTransportFeedback( void RTCPReceiver::HandleTransportFeedback(
RTCPUtility::RTCPParserV2* rtcp_parser, RTCPUtility::RTCPParserV2* rtcp_parser,
RTCPHelp::RTCPPacketInformation* rtcp_packet_information) { RTCPHelp::RTCPPacketInformation* rtcp_packet_information) {

View File

@ -168,11 +168,6 @@ class RTCPReceiver {
RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
void HandleXRVOIPMetric(
RTCPUtility::RTCPParserV2& rtcpParser,
RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
void HandleNACK(RTCPUtility::RTCPParserV2& rtcpParser, void HandleNACK(RTCPUtility::RTCPParserV2& rtcpParser,
RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
@ -208,14 +203,6 @@ class RTCPReceiver {
RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
void HandleIJ(RTCPUtility::RTCPParserV2& rtcpParser,
RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
void HandleIJItem(const RTCPUtility::RTCPPacket& rtcpPacket,
RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
void HandleTMMBR(RTCPUtility::RTCPParserV2& rtcpParser, void HandleTMMBR(RTCPUtility::RTCPParserV2& rtcpParser,
RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
@ -247,14 +234,6 @@ class RTCPReceiver {
RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
void HandleAPP(RTCPUtility::RTCPParserV2& rtcpParser,
RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
void HandleAPPItem(RTCPUtility::RTCPParserV2& rtcpParser,
RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
void HandleTransportFeedback( void HandleTransportFeedback(
RTCPUtility::RTCPParserV2* rtcp_parser, RTCPUtility::RTCPParserV2* rtcp_parser,
RTCPHelp::RTCPPacketInformation* rtcp_packet_information) RTCPHelp::RTCPPacketInformation* rtcp_packet_information)

View File

@ -23,12 +23,7 @@ RTCPPacketInformation::RTCPPacketInformation()
: rtcpPacketTypeFlags(0), : rtcpPacketTypeFlags(0),
remoteSSRC(0), remoteSSRC(0),
nackSequenceNumbers(), nackSequenceNumbers(),
applicationSubType(0),
applicationName(0),
applicationData(),
applicationLength(0),
rtt(0), rtt(0),
interArrivalJitter(0),
sliPictureId(0), sliPictureId(0),
rpsiPictureId(0), rpsiPictureId(0),
receiverEstimatedMaxBitrate(0), receiverEstimatedMaxBitrate(0),
@ -36,40 +31,9 @@ RTCPPacketInformation::RTCPPacketInformation()
ntp_frac(0), ntp_frac(0),
rtp_timestamp(0), rtp_timestamp(0),
xr_originator_ssrc(0), xr_originator_ssrc(0),
xr_dlrr_item(false), xr_dlrr_item(false) {}
VoIPMetric(nullptr) {}
RTCPPacketInformation::~RTCPPacketInformation() { RTCPPacketInformation::~RTCPPacketInformation() {}
delete[] applicationData;
}
void RTCPPacketInformation::AddVoIPMetric(const RTCPVoIPMetric* metric) {
VoIPMetric.reset(new RTCPVoIPMetric());
memcpy(VoIPMetric.get(), metric, sizeof(RTCPVoIPMetric));
}
void RTCPPacketInformation::AddApplicationData(const uint8_t* data,
const uint16_t size) {
uint8_t* oldData = applicationData;
uint16_t oldLength = applicationLength;
// Don't copy more than kRtcpAppCode_DATA_SIZE bytes.
uint16_t copySize = size;
if (size > kRtcpAppCode_DATA_SIZE) {
copySize = kRtcpAppCode_DATA_SIZE;
}
applicationLength += copySize;
applicationData = new uint8_t[applicationLength];
if (oldData) {
memcpy(applicationData, oldData, oldLength);
memcpy(applicationData + oldLength, data, copySize);
delete[] oldData;
} else {
memcpy(applicationData, data, copySize);
}
}
void RTCPPacketInformation::ResetNACKPacketIdArray() { void RTCPPacketInformation::ResetNACKPacketIdArray() {
nackSequenceNumbers.clear(); nackSequenceNumbers.clear();

View File

@ -48,10 +48,6 @@ class RTCPPacketInformation {
RTCPPacketInformation(); RTCPPacketInformation();
~RTCPPacketInformation(); ~RTCPPacketInformation();
void AddVoIPMetric(const RTCPVoIPMetric* metric);
void AddApplicationData(const uint8_t* data, const uint16_t size);
void AddNACKPacket(const uint16_t packetID); void AddNACKPacket(const uint16_t packetID);
void ResetNACKPacketIdArray(); void ResetNACKPacketIdArray();
@ -62,16 +58,9 @@ class RTCPPacketInformation {
std::vector<uint16_t> nackSequenceNumbers; std::vector<uint16_t> nackSequenceNumbers;
uint8_t applicationSubType;
uint32_t applicationName;
uint8_t* applicationData;
uint16_t applicationLength;
ReportBlockList report_blocks; ReportBlockList report_blocks;
int64_t rtt; int64_t rtt;
uint32_t interArrivalJitter;
uint8_t sliPictureId; uint8_t sliPictureId;
uint64_t rpsiPictureId; uint64_t rpsiPictureId;
uint32_t receiverEstimatedMaxBitrate; uint32_t receiverEstimatedMaxBitrate;
@ -82,7 +71,6 @@ class RTCPPacketInformation {
uint32_t xr_originator_ssrc; uint32_t xr_originator_ssrc;
bool xr_dlrr_item; bool xr_dlrr_item;
std::unique_ptr<RTCPVoIPMetric> VoIPMetric;
std::unique_ptr<rtcp::TransportFeedback> transport_feedback_; std::unique_ptr<rtcp::TransportFeedback> transport_feedback_;