| Index: media/cast/rtcp/rtcp_sender.cc
|
| diff --git a/media/cast/rtcp/rtcp_sender.cc b/media/cast/rtcp/rtcp_sender.cc
|
| index 87d3889391c89008ff4283b7d7f2c6cd201498bf..23f7466853420157115eefa1d55e14a94e9e4f52 100644
|
| --- a/media/cast/rtcp/rtcp_sender.cc
|
| +++ b/media/cast/rtcp/rtcp_sender.cc
|
| @@ -20,48 +20,45 @@ static const size_t kRtcpReceiverFrameLogSize = 8;
|
| static const size_t kRtcpReceiverEventLogSize = 4;
|
|
|
| namespace {
|
| -uint16 MergeEventTypeAndTimestampForWireFormat(
|
| - const media::cast::CastLoggingEvent& event,
|
| - const base::TimeDelta& time_delta) {
|
| - int64 time_delta_ms = time_delta.InMilliseconds();
|
| - // Max delta is 4096 milliseconds.
|
| - DCHECK_GE(GG_INT64_C(0xfff), time_delta_ms);
|
| -
|
| - uint16 event_type_and_timestamp_delta =
|
| - static_cast<uint16>(time_delta_ms & 0xfff);
|
|
|
| - uint16 event_type = 0;
|
| +// Converts a log event type to an integer value.
|
| +int ConvertEventTypeToWireFormat(const media::cast::CastLoggingEvent& event) {
|
| switch (event) {
|
| case media::cast::kAudioAckSent:
|
| - event_type = 1;
|
| - break;
|
| + return 1;
|
| case media::cast::kAudioPlayoutDelay:
|
| - event_type = 2;
|
| - break;
|
| + return 2;
|
| case media::cast::kAudioFrameDecoded:
|
| - event_type = 3;
|
| - break;
|
| + return 3;
|
| case media::cast::kAudioPacketReceived:
|
| - event_type = 4;
|
| - break;
|
| + return 4;
|
| case media::cast::kVideoAckSent:
|
| - event_type = 5;
|
| - break;
|
| + return 5;
|
| case media::cast::kVideoFrameDecoded:
|
| - event_type = 6;
|
| - break;
|
| + return 6;
|
| case media::cast::kVideoRenderDelay:
|
| - event_type = 7;
|
| - break;
|
| + return 7;
|
| case media::cast::kVideoPacketReceived:
|
| - event_type = 8;
|
| - break;
|
| + return 8;
|
| case media::cast::kDuplicatePacketReceived:
|
| - event_type = 9;
|
| - break;
|
| + return 9;
|
| default:
|
| - NOTREACHED();
|
| + return 0; // Not an interesting event.
|
| }
|
| +}
|
| +
|
| +uint16 MergeEventTypeAndTimestampForWireFormat(
|
| + const media::cast::CastLoggingEvent& event,
|
| + const base::TimeDelta& time_delta) {
|
| + int64 time_delta_ms = time_delta.InMilliseconds();
|
| + // Max delta is 4096 milliseconds.
|
| + DCHECK_GE(GG_INT64_C(0xfff), time_delta_ms);
|
| +
|
| + uint16 event_type_and_timestamp_delta =
|
| + static_cast<uint16>(time_delta_ms & 0xfff);
|
| +
|
| + uint16 event_type = ConvertEventTypeToWireFormat(event);
|
| + DCHECK(event_type);
|
| DCHECK(!(event_type & 0xfff0));
|
| return (event_type << 12) + event_type_and_timestamp_delta;
|
| }
|
| @@ -147,6 +144,11 @@ RtcpSender::RtcpSender(scoped_refptr<CastEnvironment> cast_environment,
|
|
|
| RtcpSender::~RtcpSender() {}
|
|
|
| +// static
|
| +bool RtcpSender::IsReceiverEvent(const media::cast::CastLoggingEvent& event) {
|
| + return ConvertEventTypeToWireFormat(event) != 0;
|
| +}
|
| +
|
| void RtcpSender::SendRtcpFromRtpReceiver(
|
| uint32 packet_type_flags,
|
| const transport::RtcpReportBlock* report_block,
|
|
|