| Index: media/cast/net/rtcp/rtcp_sender.cc
|
| diff --git a/media/cast/rtcp/rtcp_sender.cc b/media/cast/net/rtcp/rtcp_sender.cc
|
| similarity index 94%
|
| rename from media/cast/rtcp/rtcp_sender.cc
|
| rename to media/cast/net/rtcp/rtcp_sender.cc
|
| index 4bed3773f65079964aee741ff3b593ee32a5068c..d0986a2f0264e8bd0545cd1387e3ea4f19431c68 100644
|
| --- a/media/cast/rtcp/rtcp_sender.cc
|
| +++ b/media/cast/net/rtcp/rtcp_sender.cc
|
| @@ -2,7 +2,7 @@
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| -#include "media/cast/rtcp/rtcp_sender.h"
|
| +#include "media/cast/net/rtcp/rtcp_sender.h"
|
|
|
| #include <stdint.h>
|
|
|
| @@ -12,10 +12,10 @@
|
| #include "base/big_endian.h"
|
| #include "base/logging.h"
|
| #include "media/cast/cast_environment.h"
|
| -#include "media/cast/rtcp/rtcp_defines.h"
|
| -#include "media/cast/rtcp/rtcp_utility.h"
|
| -#include "media/cast/transport/cast_transport_defines.h"
|
| -#include "media/cast/transport/pacing/paced_sender.h"
|
| +#include "media/cast/net/cast_transport_defines.h"
|
| +#include "media/cast/net/pacing/paced_sender.h"
|
| +#include "media/cast/net/rtcp/rtcp_defines.h"
|
| +#include "media/cast/net/rtcp/rtcp_utility.h"
|
|
|
| namespace media {
|
| namespace cast {
|
| @@ -148,7 +148,7 @@ class NackStringBuilder {
|
|
|
| // TODO(mikhal): This is only used by the receiver. Consider renaming.
|
| RtcpSender::RtcpSender(scoped_refptr<CastEnvironment> cast_environment,
|
| - transport::PacedPacketSender* outgoing_transport,
|
| + PacedPacketSender* outgoing_transport,
|
| uint32 sending_ssrc,
|
| const std::string& c_name)
|
| : ssrc_(sending_ssrc),
|
| @@ -162,44 +162,44 @@ RtcpSender::~RtcpSender() {}
|
|
|
| void RtcpSender::SendRtcpFromRtpReceiver(
|
| uint32 packet_type_flags,
|
| - const transport::RtcpReportBlock* report_block,
|
| + const RtcpReportBlock* report_block,
|
| const RtcpReceiverReferenceTimeReport* rrtr,
|
| const RtcpCastMessage* cast_message,
|
| const ReceiverRtcpEventSubscriber::RtcpEventMultiMap* rtcp_events,
|
| base::TimeDelta target_delay) {
|
| - if (packet_type_flags & transport::kRtcpSr ||
|
| - packet_type_flags & transport::kRtcpDlrr ||
|
| - packet_type_flags & transport::kRtcpSenderLog) {
|
| + if (packet_type_flags & kRtcpSr ||
|
| + packet_type_flags & kRtcpDlrr ||
|
| + packet_type_flags & kRtcpSenderLog) {
|
| NOTREACHED() << "Invalid argument";
|
| }
|
| - if (packet_type_flags & transport::kRtcpPli ||
|
| - packet_type_flags & transport::kRtcpRpsi ||
|
| - packet_type_flags & transport::kRtcpRemb ||
|
| - packet_type_flags & transport::kRtcpNack) {
|
| + if (packet_type_flags & kRtcpPli ||
|
| + packet_type_flags & kRtcpRpsi ||
|
| + packet_type_flags & kRtcpRemb ||
|
| + packet_type_flags & kRtcpNack) {
|
| // Implement these for webrtc interop.
|
| NOTIMPLEMENTED();
|
| }
|
| - transport::PacketRef packet(new base::RefCountedData<Packet>);
|
| + PacketRef packet(new base::RefCountedData<Packet>);
|
| packet->data.reserve(kMaxIpPacketSize);
|
|
|
| - if (packet_type_flags & transport::kRtcpRr) {
|
| + if (packet_type_flags & kRtcpRr) {
|
| BuildRR(report_block, &packet->data);
|
| if (!c_name_.empty()) {
|
| BuildSdec(&packet->data);
|
| }
|
| }
|
| - if (packet_type_flags & transport::kRtcpBye) {
|
| + if (packet_type_flags & kRtcpBye) {
|
| BuildBye(&packet->data);
|
| }
|
| - if (packet_type_flags & transport::kRtcpRrtr) {
|
| + if (packet_type_flags & kRtcpRrtr) {
|
| DCHECK(rrtr) << "Invalid argument";
|
| BuildRrtr(rrtr, &packet->data);
|
| }
|
| - if (packet_type_flags & transport::kRtcpCast) {
|
| + if (packet_type_flags & kRtcpCast) {
|
| DCHECK(cast_message) << "Invalid argument";
|
| BuildCast(cast_message, target_delay, &packet->data);
|
| }
|
| - if (packet_type_flags & transport::kRtcpReceiverLog) {
|
| + if (packet_type_flags & kRtcpReceiverLog) {
|
| DCHECK(rtcp_events) << "Invalid argument";
|
| BuildReceiverLog(*rtcp_events, &packet->data);
|
| }
|
| @@ -210,7 +210,7 @@ void RtcpSender::SendRtcpFromRtpReceiver(
|
| transport_->SendRtcpPacket(ssrc_, packet);
|
| }
|
|
|
| -void RtcpSender::BuildRR(const transport::RtcpReportBlock* report_block,
|
| +void RtcpSender::BuildRR(const RtcpReportBlock* report_block,
|
| Packet* packet) const {
|
| size_t start_size = packet->size();
|
| DCHECK_LT(start_size + 32, kMaxIpPacketSize) << "Not enough buffer space";
|
| @@ -223,7 +223,7 @@ void RtcpSender::BuildRR(const transport::RtcpReportBlock* report_block,
|
| base::BigEndianWriter big_endian_writer(
|
| reinterpret_cast<char*>(&((*packet)[start_size])), 8);
|
| big_endian_writer.WriteU8(0x80 + (report_block ? 1 : 0));
|
| - big_endian_writer.WriteU8(transport::kPacketTypeReceiverReport);
|
| + big_endian_writer.WriteU8(kPacketTypeReceiverReport);
|
| big_endian_writer.WriteU16(number_of_rows);
|
| big_endian_writer.WriteU32(ssrc_);
|
|
|
| @@ -232,7 +232,7 @@ void RtcpSender::BuildRR(const transport::RtcpReportBlock* report_block,
|
| }
|
| }
|
|
|
| -void RtcpSender::AddReportBlocks(const transport::RtcpReportBlock& report_block,
|
| +void RtcpSender::AddReportBlocks(const RtcpReportBlock& report_block,
|
| Packet* packet) const {
|
| size_t start_size = packet->size();
|
| DCHECK_LT(start_size + 24, kMaxIpPacketSize) << "Not enough buffer space";
|
| @@ -276,7 +276,7 @@ void RtcpSender::BuildSdec(Packet* packet) const {
|
| reinterpret_cast<char*>(&((*packet)[start_size])), 10);
|
| // We always need to add one SDES CNAME.
|
| big_endian_writer.WriteU8(0x80 + 1);
|
| - big_endian_writer.WriteU8(transport::kPacketTypeSdes);
|
| + big_endian_writer.WriteU8(kPacketTypeSdes);
|
|
|
| // Handle SDES length later on.
|
| uint32 sdes_length_position = static_cast<uint32>(start_size) + 3;
|
| @@ -319,7 +319,7 @@ void RtcpSender::BuildPli(uint32 remote_ssrc, Packet* packet) const {
|
| reinterpret_cast<char*>(&((*packet)[start_size])), 12);
|
| uint8 FMT = 1; // Picture loss indicator.
|
| big_endian_writer.WriteU8(0x80 + FMT);
|
| - big_endian_writer.WriteU8(transport::kPacketTypePayloadSpecific);
|
| + big_endian_writer.WriteU8(kPacketTypePayloadSpecific);
|
| big_endian_writer.WriteU16(2); // Used fixed length of 2.
|
| big_endian_writer.WriteU32(ssrc_); // Add our own SSRC.
|
| big_endian_writer.WriteU32(remote_ssrc); // Add the remote SSRC.
|
| @@ -346,7 +346,7 @@ void RtcpSender::BuildRpsi(const RtcpRpsiMessage* rpsi, Packet* packet) const {
|
| reinterpret_cast<char*>(&((*packet)[start_size])), 24);
|
| uint8 FMT = 3; // Reference Picture Selection Indication.
|
| big_endian_writer.WriteU8(0x80 + FMT);
|
| - big_endian_writer.WriteU8(transport::kPacketTypePayloadSpecific);
|
| + big_endian_writer.WriteU8(kPacketTypePayloadSpecific);
|
|
|
| // Calculate length.
|
| uint32 bits_required = 7;
|
| @@ -404,7 +404,7 @@ void RtcpSender::BuildRemb(const RtcpRembMessage* remb, Packet* packet) const {
|
| // Add application layer feedback.
|
| uint8 FMT = 15;
|
| big_endian_writer.WriteU8(0x80 + FMT);
|
| - big_endian_writer.WriteU8(transport::kPacketTypePayloadSpecific);
|
| + big_endian_writer.WriteU8(kPacketTypePayloadSpecific);
|
| big_endian_writer.WriteU8(0);
|
| big_endian_writer.WriteU8(static_cast<uint8>(remb->remb_ssrcs.size() + 4));
|
| big_endian_writer.WriteU32(ssrc_); // Add our own SSRC.
|
| @@ -442,7 +442,7 @@ void RtcpSender::BuildNack(const RtcpNackMessage* nack, Packet* packet) const {
|
|
|
| uint8 FMT = 1;
|
| big_endian_writer.WriteU8(0x80 + FMT);
|
| - big_endian_writer.WriteU8(transport::kPacketTypeGenericRtpFeedback);
|
| + big_endian_writer.WriteU8(kPacketTypeGenericRtpFeedback);
|
| big_endian_writer.WriteU8(0);
|
| size_t nack_size_pos = start_size + 3;
|
| big_endian_writer.WriteU8(3);
|
| @@ -498,7 +498,7 @@ void RtcpSender::BuildBye(Packet* packet) const {
|
| base::BigEndianWriter big_endian_writer(
|
| reinterpret_cast<char*>(&((*packet)[start_size])), 8);
|
| big_endian_writer.WriteU8(0x80 + 1);
|
| - big_endian_writer.WriteU8(transport::kPacketTypeBye);
|
| + big_endian_writer.WriteU8(kPacketTypeBye);
|
| big_endian_writer.WriteU16(1); // Length.
|
| big_endian_writer.WriteU32(ssrc_); // Add our own SSRC.
|
| }
|
| @@ -516,7 +516,7 @@ void RtcpSender::BuildRrtr(const RtcpReceiverReferenceTimeReport* rrtr,
|
| reinterpret_cast<char*>(&((*packet)[start_size])), 20);
|
|
|
| big_endian_writer.WriteU8(0x80);
|
| - big_endian_writer.WriteU8(transport::kPacketTypeXr);
|
| + big_endian_writer.WriteU8(kPacketTypeXr);
|
| big_endian_writer.WriteU16(4); // Length.
|
| big_endian_writer.WriteU32(ssrc_); // Add our own SSRC.
|
| big_endian_writer.WriteU8(4); // Add block type.
|
| @@ -542,7 +542,7 @@ void RtcpSender::BuildCast(const RtcpCastMessage* cast,
|
| reinterpret_cast<char*>(&((*packet)[start_size])), 20);
|
| uint8 FMT = 15; // Application layer feedback.
|
| big_endian_writer.WriteU8(0x80 + FMT);
|
| - big_endian_writer.WriteU8(transport::kPacketTypePayloadSpecific);
|
| + big_endian_writer.WriteU8(kPacketTypePayloadSpecific);
|
| big_endian_writer.WriteU8(0);
|
| size_t cast_size_pos = start_size + 3; // Save length position.
|
| big_endian_writer.WriteU8(4);
|
| @@ -643,7 +643,7 @@ void RtcpSender::BuildReceiverLog(
|
| base::BigEndianWriter big_endian_writer(
|
| reinterpret_cast<char*>(&((*packet)[packet_start_size])), rtcp_log_size);
|
| big_endian_writer.WriteU8(0x80 + kReceiverLogSubtype);
|
| - big_endian_writer.WriteU8(transport::kPacketTypeApplicationDefined);
|
| + big_endian_writer.WriteU8(kPacketTypeApplicationDefined);
|
| big_endian_writer.WriteU16(static_cast<uint16>(
|
| 2 + 2 * number_of_frames + total_number_of_messages_to_send));
|
| big_endian_writer.WriteU32(ssrc_); // Add our own SSRC.
|
|
|