| Index: media/cast/net/rtcp/rtcp_builder.cc
|
| diff --git a/media/cast/net/rtcp/rtcp_builder.cc b/media/cast/net/rtcp/rtcp_builder.cc
|
| index b4e58c3d362b273df80a6f2a1b9842e726ea3e2a..6f25a99105a36c0a768cac6c8f5ee5c75bce5f05 100644
|
| --- a/media/cast/net/rtcp/rtcp_builder.cc
|
| +++ b/media/cast/net/rtcp/rtcp_builder.cc
|
| @@ -44,33 +44,6 @@ bool EventTimestampLessThan(const RtcpReceiverEventLogMessage& lhs,
|
| return lhs.event_timestamp < rhs.event_timestamp;
|
| }
|
|
|
| -void AddReceiverLogEntries(
|
| - const RtcpReceiverLogMessage& redundancy_receiver_log_message,
|
| - RtcpReceiverLogMessage* receiver_log_message,
|
| - size_t* remaining_space,
|
| - size_t* number_of_frames,
|
| - size_t* total_number_of_messages_to_send) {
|
| - RtcpReceiverLogMessage::const_iterator it =
|
| - redundancy_receiver_log_message.begin();
|
| - while (it != redundancy_receiver_log_message.end() &&
|
| - *remaining_space >=
|
| - kRtcpReceiverFrameLogSize + kRtcpReceiverEventLogSize) {
|
| - receiver_log_message->push_front(*it);
|
| - size_t num_event_logs = (*remaining_space - kRtcpReceiverFrameLogSize) /
|
| - kRtcpReceiverEventLogSize;
|
| - RtcpReceiverEventLogMessages& event_log_messages =
|
| - receiver_log_message->front().event_log_messages_;
|
| - if (num_event_logs < event_log_messages.size())
|
| - event_log_messages.resize(num_event_logs);
|
| -
|
| - *remaining_space -= kRtcpReceiverFrameLogSize +
|
| - event_log_messages.size() * kRtcpReceiverEventLogSize;
|
| - ++number_of_frames;
|
| - *total_number_of_messages_to_send += event_log_messages.size();
|
| - ++it;
|
| - }
|
| -}
|
| -
|
| // A class to build a string representing the NACK list in Cast message.
|
| //
|
| // The string will look like "23:3-6 25:1,5-6", meaning packets 3 to 6 in frame
|
| @@ -197,7 +170,7 @@ PacketRef RtcpBuilder::BuildRtcpFromReceiver(
|
| const RtcpReportBlock* report_block,
|
| const RtcpReceiverReferenceTimeReport* rrtr,
|
| const RtcpCastMessage* cast_message,
|
| - const ReceiverRtcpEventSubscriber::RtcpEventMultiMap* rtcp_events,
|
| + const ReceiverRtcpEventSubscriber::RtcpEvents* rtcp_events,
|
| base::TimeDelta target_delay) {
|
| Start();
|
|
|
| @@ -366,7 +339,7 @@ void RtcpBuilder::AddDlrrRb(const RtcpDlrrReportBlock& dlrr) {
|
| }
|
|
|
| void RtcpBuilder::AddReceiverLog(
|
| - const ReceiverRtcpEventSubscriber::RtcpEventMultiMap& rtcp_events) {
|
| + const ReceiverRtcpEventSubscriber::RtcpEvents& rtcp_events) {
|
| size_t total_number_of_messages_to_send = 0;
|
| RtcpReceiverLogMessage receiver_log_message;
|
|
|
| @@ -441,12 +414,11 @@ void RtcpBuilder::AddReceiverLog(
|
| }
|
|
|
| bool RtcpBuilder::GetRtcpReceiverLogMessage(
|
| - const ReceiverRtcpEventSubscriber::RtcpEventMultiMap& rtcp_events,
|
| + const ReceiverRtcpEventSubscriber::RtcpEvents& rtcp_events,
|
| RtcpReceiverLogMessage* receiver_log_message,
|
| size_t* total_number_of_messages_to_send) {
|
| size_t number_of_frames = 0;
|
| - size_t remaining_space =
|
| - std::min<size_t>(kMaxReceiverLogBytes, writer_.remaining());
|
| + size_t remaining_space = writer_.remaining();
|
| if (remaining_space < kRtcpCastLogHeaderSize + kRtcpReceiverFrameLogSize +
|
| kRtcpReceiverEventLogSize) {
|
| return false;
|
| @@ -459,7 +431,7 @@ bool RtcpBuilder::GetRtcpReceiverLogMessage(
|
| // Account for the RTCP header for an application-defined packet.
|
| remaining_space -= kRtcpCastLogHeaderSize;
|
|
|
| - ReceiverRtcpEventSubscriber::RtcpEventMultiMap::const_reverse_iterator rit =
|
| + ReceiverRtcpEventSubscriber::RtcpEvents::const_reverse_iterator rit =
|
| rtcp_events.rbegin();
|
|
|
| while (rit != rtcp_events.rend() &&
|
| @@ -510,36 +482,6 @@ bool RtcpBuilder::GetRtcpReceiverLogMessage(
|
| receiver_log_message->push_front(frame_log);
|
| }
|
|
|
| - rtcp_events_history_.push_front(*receiver_log_message);
|
| -
|
| - // We don't try to match RTP timestamps of redundancy frame logs with those
|
| - // from the newest set (which would save the space of an extra RTP timestamp
|
| - // over the wire). Unless the redundancy frame logs are very recent, it's
|
| - // unlikely there will be a match anyway.
|
| - if (rtcp_events_history_.size() > kFirstRedundancyOffset) {
|
| - // Add first redundnacy messages, if enough space remaining
|
| - AddReceiverLogEntries(rtcp_events_history_[kFirstRedundancyOffset],
|
| - receiver_log_message,
|
| - &remaining_space,
|
| - &number_of_frames,
|
| - total_number_of_messages_to_send);
|
| - }
|
| -
|
| - if (rtcp_events_history_.size() > kSecondRedundancyOffset) {
|
| - // Add second redundancy messages, if enough space remaining
|
| - AddReceiverLogEntries(rtcp_events_history_[kSecondRedundancyOffset],
|
| - receiver_log_message,
|
| - &remaining_space,
|
| - &number_of_frames,
|
| - total_number_of_messages_to_send);
|
| - }
|
| -
|
| - if (rtcp_events_history_.size() > kReceiveLogMessageHistorySize) {
|
| - rtcp_events_history_.pop_back();
|
| - }
|
| -
|
| - DCHECK_LE(rtcp_events_history_.size(), kReceiveLogMessageHistorySize);
|
| -
|
| VLOG(3) << "number of frames: " << number_of_frames;
|
| VLOG(3) << "total messages to send: " << *total_number_of_messages_to_send;
|
| return number_of_frames > 0;
|
|
|