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, |