Unify Transport and newapi::Transport interfaces.
BUG=webrtc:1695
R=stefan@webrtc.org
TBR=mflodman@webrtc.org
Review URL: https://codereview.webrtc.org/1369263002
Cr-Commit-Position: refs/heads/master@{#10096}
diff --git a/talk/media/webrtc/webrtcvideoengine2.h b/talk/media/webrtc/webrtcvideoengine2.h
index 52282a6..6b36642 100644
--- a/talk/media/webrtc/webrtcvideoengine2.h
+++ b/talk/media/webrtc/webrtcvideoengine2.h
@@ -155,7 +155,7 @@
class WebRtcVideoChannel2 : public rtc::MessageHandler,
public VideoMediaChannel,
- public webrtc::newapi::Transport,
+ public webrtc::Transport,
public webrtc::LoadObserver {
public:
WebRtcVideoChannel2(webrtc::Call* call,
diff --git a/talk/media/webrtc/webrtcvoiceengine.h b/talk/media/webrtc/webrtcvoiceengine.h
index 2832fb3..5266f55 100644
--- a/talk/media/webrtc/webrtcvoiceengine.h
+++ b/talk/media/webrtc/webrtcvoiceengine.h
@@ -250,16 +250,16 @@
VoiceMediaChannel::Error* error) override;
// implements Transport interface
- int SendPacket(const void* data, size_t len) override {
+ bool SendRtp(const uint8_t* data, size_t len) override {
rtc::Buffer packet(reinterpret_cast<const uint8_t*>(data), len,
kMaxRtpPacketLen);
- return VoiceMediaChannel::SendPacket(&packet) ? static_cast<int>(len) : -1;
+ return VoiceMediaChannel::SendPacket(&packet);
}
- int SendRTCPPacket(const void* data, size_t len) override {
+ bool SendRtcp(const uint8_t* data, size_t len) override {
rtc::Buffer packet(reinterpret_cast<const uint8_t*>(data), len,
kMaxRtpPacketLen);
- return VoiceMediaChannel::SendRtcp(&packet) ? static_cast<int>(len) : -1;
+ return VoiceMediaChannel::SendRtcp(&packet);
}
bool FindSsrc(int channel_num, uint32* ssrc);
diff --git a/webrtc/audio_send_stream.h b/webrtc/audio_send_stream.h
index 7ae6afd..695d28f 100644
--- a/webrtc/audio_send_stream.h
+++ b/webrtc/audio_send_stream.h
@@ -29,7 +29,7 @@
struct Config {
Config() = delete;
- explicit Config(newapi::Transport* send_transport)
+ explicit Config(Transport* send_transport)
: send_transport(send_transport) {}
std::string ToString() const;
@@ -46,7 +46,7 @@
} rtp;
// Transport for outgoing packets.
- newapi::Transport* send_transport = nullptr;
+ Transport* send_transport = nullptr;
rtc::scoped_ptr<AudioEncoder> encoder;
int cng_payload_type = -1; // pt, or -1 to disable Comfort Noise Generator.
diff --git a/webrtc/call/transport_adapter.cc b/webrtc/call/transport_adapter.cc
index 733f3db..e57591a 100644
--- a/webrtc/call/transport_adapter.cc
+++ b/webrtc/call/transport_adapter.cc
@@ -15,27 +15,23 @@
namespace webrtc {
namespace internal {
-TransportAdapter::TransportAdapter(newapi::Transport* transport)
+TransportAdapter::TransportAdapter(Transport* transport)
: transport_(transport), enabled_(0) {
RTC_DCHECK(nullptr != transport);
}
-int TransportAdapter::SendPacket(const void* packet, size_t length) {
+bool TransportAdapter::SendRtp(const uint8_t* packet, size_t length) {
if (enabled_.Value() == 0)
return false;
- bool success = transport_->SendRtp(static_cast<const uint8_t*>(packet),
- length);
- return success ? static_cast<int>(length) : -1;
+ return transport_->SendRtp(packet, length);
}
-int TransportAdapter::SendRTCPPacket(const void* packet, size_t length) {
+bool TransportAdapter::SendRtcp(const uint8_t* packet, size_t length) {
if (enabled_.Value() == 0)
return false;
- bool success = transport_->SendRtcp(static_cast<const uint8_t*>(packet),
- length);
- return success ? static_cast<int>(length) : -1;
+ return transport_->SendRtcp(packet, length);
}
void TransportAdapter::Enable() {
diff --git a/webrtc/call/transport_adapter.h b/webrtc/call/transport_adapter.h
index c14c262..07ea716 100644
--- a/webrtc/call/transport_adapter.h
+++ b/webrtc/call/transport_adapter.h
@@ -17,18 +17,18 @@
namespace webrtc {
namespace internal {
-class TransportAdapter : public webrtc::Transport {
+class TransportAdapter : public Transport {
public:
- explicit TransportAdapter(newapi::Transport* transport);
+ explicit TransportAdapter(Transport* transport);
- int SendPacket(const void* packet, size_t length) override;
- int SendRTCPPacket(const void* packet, size_t length) override;
+ bool SendRtp(const uint8_t* packet, size_t length) override;
+ bool SendRtcp(const uint8_t* packet, size_t length) override;
void Enable();
void Disable();
private:
- newapi::Transport *transport_;
+ Transport *transport_;
Atomic32 enabled_;
};
} // namespace internal
diff --git a/webrtc/common_types.h b/webrtc/common_types.h
index 7be74e6..9b730a1 100644
--- a/webrtc/common_types.h
+++ b/webrtc/common_types.h
@@ -165,17 +165,6 @@
kVideoFrameDelta = 4, // depends on the previus frame
};
-// External transport callback interface
-class Transport {
- public:
- virtual int SendPacket(const void* data, size_t len) = 0;
- virtual int SendRTCPPacket(const void* data, size_t len) = 0;
-
- protected:
- virtual ~Transport() {}
- Transport() {}
-};
-
// Statistics for an RTCP channel
struct RtcpStatistics {
RtcpStatistics()
diff --git a/webrtc/modules/rtp_rtcp/source/nack_rtx_unittest.cc b/webrtc/modules/rtp_rtcp/source/nack_rtx_unittest.cc
index d32d09f..6f13056 100644
--- a/webrtc/modules/rtp_rtcp/source/nack_rtx_unittest.cc
+++ b/webrtc/modules/rtp_rtcp/source/nack_rtx_unittest.cc
@@ -22,6 +22,7 @@
#include "webrtc/modules/rtp_rtcp/interface/rtp_receiver.h"
#include "webrtc/modules/rtp_rtcp/interface/rtp_rtcp.h"
#include "webrtc/modules/rtp_rtcp/interface/rtp_rtcp_defines.h"
+#include "webrtc/transport.h"
using namespace webrtc;
@@ -95,7 +96,7 @@
packet_loss_ = 0;
}
- int SendPacket(const void* data, size_t len) override {
+ bool SendRtp(const uint8_t* data, size_t len) override {
count_++;
const unsigned char* ptr = static_cast<const unsigned char*>(data);
uint32_t ssrc = (ptr[8] << 24) + (ptr[9] << 16) + (ptr[10] << 8) + ptr[11];
@@ -110,7 +111,7 @@
RTPHeader header;
rtc::scoped_ptr<RtpHeaderParser> parser(RtpHeaderParser::Create());
if (!parser->Parse(ptr, len, &header)) {
- return -1;
+ return false;
}
if (!rtp_payload_registry_->IsRtx(header)) {
@@ -121,11 +122,11 @@
}
if (packet_loss_ > 0) {
if ((count_ % packet_loss_) == 0) {
- return static_cast<int>(len);
+ return true;
}
} else if (count_ >= consecutive_drop_start_ &&
count_ < consecutive_drop_end_) {
- return static_cast<int>(len);
+ return true;
}
if (rtp_payload_registry_->IsRtx(header)) {
// Remove the RTX header and parse the original RTP header.
@@ -133,7 +134,7 @@
&restored_packet_ptr, ptr, &packet_length, rtp_receiver_->SSRC(),
header));
if (!parser->Parse(restored_packet_ptr, packet_length, &header)) {
- return -1;
+ return false;
}
} else {
rtp_payload_registry_->SetIncomingPayloadType(header);
@@ -144,21 +145,18 @@
PayloadUnion payload_specific;
if (!rtp_payload_registry_->GetPayloadSpecifics(header.payloadType,
&payload_specific)) {
- return -1;
+ return false;
}
if (!rtp_receiver_->IncomingRtpPacket(header, restored_packet_ptr,
packet_length, payload_specific,
true)) {
- return -1;
+ return false;
}
- return static_cast<int>(len);
+ return true;
}
- int SendRTCPPacket(const void* data, size_t len) override {
- if (module_->IncomingRtcpPacket((const uint8_t*)data, len) == 0) {
- return static_cast<int>(len);
- }
- return -1;
+ bool SendRtcp(const uint8_t* data, size_t len) override {
+ return module_->IncomingRtcpPacket((const uint8_t*)data, len) == 0;
}
int count_;
int packet_loss_;
diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_format_remb_unittest.cc b/webrtc/modules/rtp_rtcp/source/rtcp_format_remb_unittest.cc
index ad7d66b..3f0b047 100644
--- a/webrtc/modules/rtp_rtcp/source/rtcp_format_remb_unittest.cc
+++ b/webrtc/modules/rtp_rtcp/source/rtcp_format_remb_unittest.cc
@@ -31,8 +31,10 @@
rtcp_receiver_(rtcp_receiver) {
}
- int SendPacket(const void* /*data*/, size_t /*len*/) override { return -1; }
- int SendRTCPPacket(const void* packet, size_t packetLength) override {
+ bool SendRtp(const uint8_t* /*data*/, size_t /*len*/) override {
+ return false;
+ }
+ bool SendRtcp(const uint8_t* packet, size_t packetLength) override {
RTCPUtility::RTCPParserV2 rtcpParser((uint8_t*)packet,
packetLength,
true); // Allow non-compound RTCP
@@ -46,7 +48,7 @@
rtcpPacketInformation.rtcpPacketTypeFlags & kRtcpRemb);
EXPECT_EQ((uint32_t)1234,
rtcpPacketInformation.receiverEstimatedMaxBitrate);
- return static_cast<int>(packetLength);
+ return true;
}
private:
RTCPReceiver* rtcp_receiver_;
diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_receiver_unittest.cc b/webrtc/modules/rtp_rtcp/source/rtcp_receiver_unittest.cc
index 2e99009..81ee72f 100644
--- a/webrtc/modules/rtp_rtcp/source/rtcp_receiver_unittest.cc
+++ b/webrtc/modules/rtp_rtcp/source/rtcp_receiver_unittest.cc
@@ -37,14 +37,14 @@
void SetRTCPReceiver(RTCPReceiver* rtcp_receiver) {
rtcp_receiver_ = rtcp_receiver;
}
- int SendPacket(const void* /*data*/, size_t /*len*/) override {
+ bool SendRtp(const uint8_t* /*data*/, size_t /*len*/) override {
ADD_FAILURE(); // FAIL() gives a compile error.
- return -1;
+ return false;
}
- int SendRTCPPacket(const void* packet, size_t packet_len) override {
+ bool SendRtcp(const uint8_t* packet, size_t packet_len) override {
ADD_FAILURE();
- return 0;
+ return true;
}
int OnReceivedPayloadData(const uint8_t* payloadData,
diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_sender.cc b/webrtc/modules/rtp_rtcp/source/rtcp_sender.cc
index 8b7bbb3..111757b 100644
--- a/webrtc/modules/rtp_rtcp/source/rtcp_sender.cc
+++ b/webrtc/modules/rtp_rtcp/source/rtcp_sender.cc
@@ -1117,7 +1117,7 @@
int32_t RTCPSender::SendToNetwork(const uint8_t* dataBuffer, size_t length) {
CriticalSectionScoped lock(critical_section_transport_.get());
if (cbTransport_) {
- if (cbTransport_->SendRTCPPacket(dataBuffer, length) > 0)
+ if (cbTransport_->SendRtcp(dataBuffer, length))
return 0;
}
return -1;
@@ -1220,7 +1220,7 @@
: transport_(transport), send_failure_(false) {}
void OnPacketReady(uint8_t* data, size_t length) override {
- if (transport_->SendRTCPPacket(data, length) <= 0)
+ if (!transport_->SendRtcp(data, length))
send_failure_ = true;
}
diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_sender.h b/webrtc/modules/rtp_rtcp/source/rtcp_sender.h
index fa6468e..2051102 100644
--- a/webrtc/modules/rtp_rtcp/source/rtcp_sender.h
+++ b/webrtc/modules/rtp_rtcp/source/rtcp_sender.h
@@ -26,6 +26,7 @@
#include "webrtc/modules/rtp_rtcp/source/rtcp_utility.h"
#include "webrtc/modules/rtp_rtcp/source/rtp_utility.h"
#include "webrtc/modules/rtp_rtcp/source/tmmbr_help.h"
+#include "webrtc/transport.h"
#include "webrtc/typedefs.h"
namespace webrtc {
diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_sender_unittest.cc b/webrtc/modules/rtp_rtcp/source/rtcp_sender_unittest.cc
index 9a6bf11..33c3f84 100644
--- a/webrtc/modules/rtp_rtcp/source/rtcp_sender_unittest.cc
+++ b/webrtc/modules/rtp_rtcp/source/rtcp_sender_unittest.cc
@@ -199,12 +199,12 @@
public:
TestTransport() {}
- int SendPacket(const void* /*data*/, size_t /*len*/) override {
- return -1;
+ bool SendRtp(const uint8_t* /*data*/, size_t /*len*/) override {
+ return false;
}
- int SendRTCPPacket(const void* data, size_t len) override {
+ bool SendRtcp(const uint8_t* data, size_t len) override {
parser_.Parse(static_cast<const uint8_t*>(data), len);
- return static_cast<int>(len);
+ return true;
}
int OnReceivedPayloadData(const uint8_t* payload_data,
const size_t payload_size,
diff --git a/webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl_unittest.cc b/webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl_unittest.cc
index 0efdc56..57a082d 100644
--- a/webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl_unittest.cc
+++ b/webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl_unittest.cc
@@ -61,15 +61,15 @@
clock_ = clock;
delay_ms_ = delay_ms;
}
- int SendPacket(const void* data, size_t len) override {
+ bool SendRtp(const uint8_t* data, size_t len) override {
RTPHeader header;
rtc::scoped_ptr<RtpHeaderParser> parser(RtpHeaderParser::Create());
EXPECT_TRUE(parser->Parse(static_cast<const uint8_t*>(data), len, &header));
++rtp_packets_sent_;
last_rtp_header_ = header;
- return static_cast<int>(len);
+ return true;
}
- int SendRTCPPacket(const void* data, size_t len) override {
+ bool SendRtcp(const uint8_t* data, size_t len) override {
test::RtcpPacketParser parser;
parser.Parse(static_cast<const uint8_t*>(data), len);
last_nack_list_ = parser.nack_item()->last_nack_list();
@@ -80,7 +80,7 @@
EXPECT_TRUE(receiver_ != NULL);
EXPECT_EQ(0, receiver_->IncomingRtcpPacket(
static_cast<const uint8_t*>(data), len));
- return static_cast<int>(len);
+ return true;
}
ModuleRtpRtcpImpl* receiver_;
SimulatedClock* clock_;
diff --git a/webrtc/modules/rtp_rtcp/source/rtp_sender.cc b/webrtc/modules/rtp_rtcp/source/rtp_sender.cc
index fcaf260..ae292a0 100644
--- a/webrtc/modules/rtp_rtcp/source/rtp_sender.cc
+++ b/webrtc/modules/rtp_rtcp/source/rtp_sender.cc
@@ -735,7 +735,8 @@
bool RTPSender::SendPacketToNetwork(const uint8_t *packet, size_t size) {
int bytes_sent = -1;
if (transport_) {
- bytes_sent = transport_->SendPacket(packet, size);
+ bytes_sent =
+ transport_->SendRtp(packet, size) ? static_cast<int>(size) : -1;
}
TRACE_EVENT_INSTANT2(TRACE_DISABLED_BY_DEFAULT("webrtc_rtp"),
"RTPSender::SendPacketToNetwork", "size", size, "sent",
diff --git a/webrtc/modules/rtp_rtcp/source/rtp_sender.h b/webrtc/modules/rtp_rtcp/source/rtp_sender.h
index f133417..564300f 100644
--- a/webrtc/modules/rtp_rtcp/source/rtp_sender.h
+++ b/webrtc/modules/rtp_rtcp/source/rtp_sender.h
@@ -24,6 +24,7 @@
#include "webrtc/modules/rtp_rtcp/source/rtp_rtcp_config.h"
#include "webrtc/modules/rtp_rtcp/source/rtp_utility.h"
#include "webrtc/modules/rtp_rtcp/source/ssrc_database.h"
+#include "webrtc/transport.h"
#define MAX_INIT_RTP_SEQ_NUMBER 32767 // 2^15 -1.
diff --git a/webrtc/modules/rtp_rtcp/source/rtp_sender_unittest.cc b/webrtc/modules/rtp_rtcp/source/rtp_sender_unittest.cc
index d33b086..edcb84d 100644
--- a/webrtc/modules/rtp_rtcp/source/rtp_sender_unittest.cc
+++ b/webrtc/modules/rtp_rtcp/source/rtp_sender_unittest.cc
@@ -78,7 +78,7 @@
~LoopbackTransportTest() {
STLDeleteContainerPointers(sent_packets_.begin(), sent_packets_.end());
}
- int SendPacket(const void *data, size_t len) override {
+ bool SendRtp(const uint8_t *data, size_t len) override {
packets_sent_++;
rtc::Buffer* buffer =
new rtc::Buffer(reinterpret_cast<const uint8_t*>(data), len);
@@ -86,10 +86,10 @@
last_sent_packet_len_ = len;
total_bytes_sent_ += len;
sent_packets_.push_back(buffer);
- return static_cast<int>(len);
+ return true;
}
- int SendRTCPPacket(const void* data, size_t len) override {
- return -1;
+ bool SendRtcp(const uint8_t* data, size_t len) override {
+ return false;
}
int packets_sent_;
size_t last_sent_packet_len_;
@@ -864,26 +864,26 @@
// Send 10 packets of increasing size.
for (size_t i = 0; i < kNumPayloadSizes; ++i) {
int64_t capture_time_ms = fake_clock_.TimeInMilliseconds();
- EXPECT_CALL(transport, SendPacket(_, _)).WillOnce(testing::ReturnArg<1>());
+ EXPECT_CALL(transport, SendRtp(_, _)).WillOnce(testing::Return(true));
SendPacket(capture_time_ms, kPayloadSizes[i]);
rtp_sender_->TimeToSendPacket(seq_num++, capture_time_ms, false);
fake_clock_.AdvanceTimeMilliseconds(33);
}
// The amount of padding to send it too small to send a payload packet.
- EXPECT_CALL(transport, SendPacket(_, kMaxPaddingSize + rtp_header_len))
- .WillOnce(testing::ReturnArg<1>());
+ EXPECT_CALL(transport, SendRtp(_, kMaxPaddingSize + rtp_header_len))
+ .WillOnce(testing::Return(true));
EXPECT_EQ(kMaxPaddingSize, rtp_sender_->TimeToSendPadding(49));
EXPECT_CALL(transport,
- SendPacket(_, kPayloadSizes[0] + rtp_header_len + kRtxHeaderSize))
- .WillOnce(testing::ReturnArg<1>());
+ SendRtp(_, kPayloadSizes[0] + rtp_header_len + kRtxHeaderSize))
+ .WillOnce(testing::Return(true));
EXPECT_EQ(kPayloadSizes[0], rtp_sender_->TimeToSendPadding(500));
- EXPECT_CALL(transport, SendPacket(_, kPayloadSizes[kNumPayloadSizes - 1] +
+ EXPECT_CALL(transport, SendRtp(_, kPayloadSizes[kNumPayloadSizes - 1] +
rtp_header_len + kRtxHeaderSize))
- .WillOnce(testing::ReturnArg<1>());
- EXPECT_CALL(transport, SendPacket(_, kMaxPaddingSize + rtp_header_len))
- .WillOnce(testing::ReturnArg<1>());
+ .WillOnce(testing::Return(true));
+ EXPECT_CALL(transport, SendRtp(_, kMaxPaddingSize + rtp_header_len))
+ .WillOnce(testing::Return(true));
EXPECT_EQ(kPayloadSizes[kNumPayloadSizes - 1] + kMaxPaddingSize,
rtp_sender_->TimeToSendPadding(999));
}
diff --git a/webrtc/modules/rtp_rtcp/test/testAPI/test_api.cc b/webrtc/modules/rtp_rtcp/test/testAPI/test_api.cc
index 5b43f00..1540e55 100644
--- a/webrtc/modules/rtp_rtcp/test/testAPI/test_api.cc
+++ b/webrtc/modules/rtp_rtcp/test/testAPI/test_api.cc
@@ -30,37 +30,37 @@
packet_loss_ = n;
}
-int LoopBackTransport::SendPacket(const void* data, size_t len) {
+bool LoopBackTransport::SendRtp(const uint8_t* data, size_t len) {
count_++;
if (packet_loss_ > 0) {
if ((count_ % packet_loss_) == 0) {
- return len;
+ return true;
}
}
RTPHeader header;
rtc::scoped_ptr<RtpHeaderParser> parser(RtpHeaderParser::Create());
if (!parser->Parse(static_cast<const uint8_t*>(data), len, &header)) {
- return -1;
+ return false;
}
PayloadUnion payload_specific;
if (!rtp_payload_registry_->GetPayloadSpecifics(header.payloadType,
&payload_specific)) {
- return -1;
+ return false;
}
receive_statistics_->IncomingPacket(header, len, false);
if (!rtp_receiver_->IncomingRtpPacket(header,
static_cast<const uint8_t*>(data), len,
payload_specific, true)) {
- return -1;
+ return false;
}
- return len;
+ return true;
}
-int LoopBackTransport::SendRTCPPacket(const void* data, size_t len) {
+bool LoopBackTransport::SendRtcp(const uint8_t* data, size_t len) {
if (rtp_rtcp_module_->IncomingRtcpPacket((const uint8_t*)data, len) < 0) {
- return -1;
+ return false;
}
- return static_cast<int>(len);
+ return true;
}
int32_t TestRtpReceiver::OnReceivedPayloadData(
diff --git a/webrtc/modules/rtp_rtcp/test/testAPI/test_api.h b/webrtc/modules/rtp_rtcp/test/testAPI/test_api.h
index 0ec1cfb..8397e63 100644
--- a/webrtc/modules/rtp_rtcp/test/testAPI/test_api.h
+++ b/webrtc/modules/rtp_rtcp/test/testAPI/test_api.h
@@ -17,12 +17,13 @@
#include "webrtc/modules/rtp_rtcp/interface/rtp_receiver.h"
#include "webrtc/modules/rtp_rtcp/interface/rtp_rtcp.h"
#include "webrtc/modules/rtp_rtcp/interface/rtp_rtcp_defines.h"
+#include "webrtc/transport.h"
namespace webrtc {
// This class sends all its packet straight to the provided RtpRtcp module.
// with optional packet loss.
-class LoopBackTransport : public webrtc::Transport {
+class LoopBackTransport : public Transport {
public:
LoopBackTransport()
: count_(0),
@@ -35,8 +36,8 @@
RtpReceiver* receiver,
ReceiveStatistics* receive_statistics);
void DropEveryNthPacket(int n);
- int SendPacket(const void* data, size_t len) override;
- int SendRTCPPacket(const void* data, size_t len) override;
+ bool SendRtp(const uint8_t* data, size_t len) override;
+ bool SendRtcp(const uint8_t* data, size_t len) override;
private:
int count_;
diff --git a/webrtc/test/call_test.cc b/webrtc/test/call_test.cc
index 19e292f..0986df5 100644
--- a/webrtc/test/call_test.cc
+++ b/webrtc/test/call_test.cc
@@ -90,7 +90,7 @@
}
void CallTest::CreateSendConfig(size_t num_streams,
- newapi::Transport* send_transport) {
+ Transport* send_transport) {
assert(num_streams <= kNumSsrcs);
send_config_ = VideoSendStream::Config(send_transport);
send_config_.encoder_settings.encoder = &fake_encoder_;
@@ -106,7 +106,7 @@
}
void CallTest::CreateMatchingReceiveConfigs(
- newapi::Transport* rtcp_send_transport) {
+ Transport* rtcp_send_transport) {
assert(!send_config_.rtp.ssrcs.empty());
assert(receive_configs_.empty());
assert(allocated_decoders_.empty());
diff --git a/webrtc/test/call_test.h b/webrtc/test/call_test.h
index 105259d..2b9dcee 100644
--- a/webrtc/test/call_test.h
+++ b/webrtc/test/call_test.h
@@ -53,8 +53,8 @@
void CreateSenderCall(const Call::Config& config);
void CreateReceiverCall(const Call::Config& config);
- void CreateSendConfig(size_t num_streams, newapi::Transport* send_transport);
- void CreateMatchingReceiveConfigs(newapi::Transport* rtcp_send_transport);
+ void CreateSendConfig(size_t num_streams, Transport* send_transport);
+ void CreateMatchingReceiveConfigs(Transport* rtcp_send_transport);
void CreateFrameGeneratorCapturer();
diff --git a/webrtc/test/channel_transport/udp_transport.h b/webrtc/test/channel_transport/udp_transport.h
index a923835..0c5079e 100644
--- a/webrtc/test/channel_transport/udp_transport.h
+++ b/webrtc/test/channel_transport/udp_transport.h
@@ -12,6 +12,7 @@
#define WEBRTC_TEST_CHANNEL_TRANSPORT_UDP_TRANSPORT_H_
#include "webrtc/common_types.h"
+#include "webrtc/transport.h"
#include "webrtc/typedefs.h"
/*
diff --git a/webrtc/test/channel_transport/udp_transport_impl.cc b/webrtc/test/channel_transport/udp_transport_impl.cc
index e16c742..f66f4ef 100644
--- a/webrtc/test/channel_transport/udp_transport_impl.cc
+++ b/webrtc/test/channel_transport/udp_transport_impl.cc
@@ -1931,18 +1931,18 @@
return -1;
}
-int UdpTransportImpl::SendPacket(const void* data, size_t length) {
+bool UdpTransportImpl::SendRtp(const uint8_t* data, size_t length) {
WEBRTC_TRACE(kTraceStream, kTraceTransport, _id, "%s", __FUNCTION__);
CriticalSectionScoped cs(_crit);
if(_destIP[0] == 0)
{
- return -1;
+ return false;
}
if(_destPort == 0)
{
- return -1;
+ return false;
}
// Create socket if it hasn't been set up already.
@@ -1980,32 +1980,32 @@
"SendPacket() failed to bind RTP socket");
_lastError = retVal;
CloseReceiveSockets();
- return -1;
+ return false;
}
}
if(_ptrSendRtpSocket)
{
return _ptrSendRtpSocket->SendTo((const int8_t*)data, length,
- _remoteRTPAddr);
+ _remoteRTPAddr) >= 0;
} else if(_ptrRtpSocket)
{
return _ptrRtpSocket->SendTo((const int8_t*)data, length,
- _remoteRTPAddr);
+ _remoteRTPAddr) >= 0;
}
- return -1;
+ return false;
}
-int UdpTransportImpl::SendRTCPPacket(const void* data, size_t length) {
+bool UdpTransportImpl::SendRtcp(const uint8_t* data, size_t length) {
CriticalSectionScoped cs(_crit);
if(_destIP[0] == 0)
{
- return -1;
+ return false;
}
if(_destPortRTCP == 0)
{
- return -1;
+ return false;
}
// Create socket if it hasn't been set up already.
@@ -2041,22 +2041,22 @@
{
_lastError = retVal;
WEBRTC_TRACE(kTraceError, kTraceTransport, _id,
- "SendRTCPPacket() failed to bind RTCP socket");
+ "SendRtcp() failed to bind RTCP socket");
CloseReceiveSockets();
- return -1;
+ return false;
}
}
if(_ptrSendRtcpSocket)
{
return _ptrSendRtcpSocket->SendTo((const int8_t*)data, length,
- _remoteRTCPAddr);
+ _remoteRTCPAddr) >= 0;
} else if(_ptrRtcpSocket)
{
return _ptrRtcpSocket->SendTo((const int8_t*)data, length,
- _remoteRTCPAddr);
+ _remoteRTCPAddr) >= 0;
}
- return -1;
+ return false;
}
int32_t UdpTransportImpl::SetSendIP(const char* ipaddr)
diff --git a/webrtc/test/channel_transport/udp_transport_impl.h b/webrtc/test/channel_transport/udp_transport_impl.h
index cbc53bc..80562f3 100644
--- a/webrtc/test/channel_transport/udp_transport_impl.h
+++ b/webrtc/test/channel_transport/udp_transport_impl.h
@@ -116,8 +116,8 @@
size_t length,
uint16_t rtcpPort) override;
// Transport functions
- int SendPacket(const void* data, size_t length) override;
- int SendRTCPPacket(const void* data, size_t length) override;
+ bool SendRtp(const uint8_t* data, size_t length) override;
+ bool SendRtcp(const uint8_t* data, size_t length) override;
// UdpTransport functions continue.
int32_t SetSendIP(const char* ipaddr) override;
diff --git a/webrtc/test/direct_transport.h b/webrtc/test/direct_transport.h
index 7295588..a0aaecb 100644
--- a/webrtc/test/direct_transport.h
+++ b/webrtc/test/direct_transport.h
@@ -28,7 +28,7 @@
namespace test {
-class DirectTransport : public newapi::Transport {
+class DirectTransport : public Transport {
public:
DirectTransport();
explicit DirectTransport(const FakeNetworkPipe::Config& config);
diff --git a/webrtc/test/mock_transport.h b/webrtc/test/mock_transport.h
index 823baf4..ca08809 100644
--- a/webrtc/test/mock_transport.h
+++ b/webrtc/test/mock_transport.h
@@ -16,10 +16,10 @@
namespace webrtc {
-class MockTransport : public webrtc::Transport {
+class MockTransport : public Transport {
public:
- MOCK_METHOD2(SendPacket, int(const void* data, size_t len));
- MOCK_METHOD2(SendRTCPPacket, int(const void* data, size_t len));
+ MOCK_METHOD2(SendRtp, bool(const uint8_t* data, size_t len));
+ MOCK_METHOD2(SendRtcp, bool(const uint8_t* data, size_t len));
};
} // namespace webrtc
#endif // WEBRTC_TEST_MOCK_TRANSPORT_H_
diff --git a/webrtc/test/null_transport.h b/webrtc/test/null_transport.h
index b80f751..a60d8cb 100644
--- a/webrtc/test/null_transport.h
+++ b/webrtc/test/null_transport.h
@@ -17,7 +17,7 @@
class PacketReceiver;
namespace test {
-class NullTransport : public newapi::Transport {
+class NullTransport : public Transport {
public:
bool SendRtp(const uint8_t* packet, size_t length) override;
bool SendRtcp(const uint8_t* packet, size_t length) override;
diff --git a/webrtc/test/rtp_rtcp_observer.h b/webrtc/test/rtp_rtcp_observer.h
index 38e2fa7..24f7256 100644
--- a/webrtc/test/rtp_rtcp_observer.h
+++ b/webrtc/test/rtp_rtcp_observer.h
@@ -27,11 +27,11 @@
class RtpRtcpObserver {
public:
virtual ~RtpRtcpObserver() {}
- newapi::Transport* SendTransport() {
+ Transport* SendTransport() {
return &send_transport_;
}
- newapi::Transport* ReceiveTransport() {
+ Transport* ReceiveTransport() {
return &receive_transport_;
}
diff --git a/webrtc/transport.h b/webrtc/transport.h
index c44c5b2..86b3e2e 100644
--- a/webrtc/transport.h
+++ b/webrtc/transport.h
@@ -16,7 +16,6 @@
#include "webrtc/typedefs.h"
namespace webrtc {
-namespace newapi {
class Transport {
public:
@@ -26,7 +25,7 @@
protected:
virtual ~Transport() {}
};
-} // namespace newapi
+
} // namespace webrtc
#endif // WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_TRANSPORT_H_
diff --git a/webrtc/video/end_to_end_tests.cc b/webrtc/video/end_to_end_tests.cc
index 1248f6c..6e08053 100644
--- a/webrtc/video/end_to_end_tests.cc
+++ b/webrtc/video/end_to_end_tests.cc
@@ -59,7 +59,7 @@
}
protected:
- class UnusedTransport : public newapi::Transport {
+ class UnusedTransport : public Transport {
private:
bool SendRtp(const uint8_t* packet, size_t length) override {
ADD_FAILURE() << "Unexpected RTP sent.";
diff --git a/webrtc/video/video_quality_test.cc b/webrtc/video/video_quality_test.cc
index 110cb06..488532d 100644
--- a/webrtc/video/video_quality_test.cc
+++ b/webrtc/video/video_quality_test.cc
@@ -39,7 +39,7 @@
static const int kPayloadTypeVP9 = 124;
class VideoAnalyzer : public PacketReceiver,
- public newapi::Transport,
+ public Transport,
public VideoRenderer,
public VideoCaptureInput,
public EncodedFrameObserver {
@@ -574,8 +574,8 @@
void VideoQualityTest::TestBody() {}
void VideoQualityTest::SetupFullStack(const Params& params,
- newapi::Transport* send_transport,
- newapi::Transport* recv_transport) {
+ Transport* send_transport,
+ Transport* recv_transport) {
if (params.logs)
trace_to_stderr_.reset(new test::TraceToStderr);
diff --git a/webrtc/video/video_quality_test.h b/webrtc/video/video_quality_test.h
index 52ac9e4..f47140e 100644
--- a/webrtc/video/video_quality_test.h
+++ b/webrtc/video/video_quality_test.h
@@ -71,8 +71,8 @@
void CreateCapturer(const Params& params, VideoCaptureInput* input);
void ValidateParams(const Params& params);
void SetupFullStack(const Params& params,
- newapi::Transport* send_transport,
- newapi::Transport* recv_transport);
+ Transport* send_transport,
+ Transport* recv_transport);
void SetupScreenshare(const Params& params);
// We need a more general capturer than the FrameGeneratorCapturer.
diff --git a/webrtc/video_receive_stream.h b/webrtc/video_receive_stream.h
index 955d875..b44bf1e 100644
--- a/webrtc/video_receive_stream.h
+++ b/webrtc/video_receive_stream.h
@@ -89,7 +89,7 @@
struct Config {
Config() = delete;
- explicit Config(newapi::Transport* rtcp_send_transport)
+ explicit Config(Transport* rtcp_send_transport)
: rtcp_send_transport(rtcp_send_transport) {}
std::string ToString() const;
@@ -144,7 +144,7 @@
} rtp;
// Transport for outgoing packets (RTCP).
- newapi::Transport* rtcp_send_transport = nullptr;
+ Transport* rtcp_send_transport = nullptr;
// VideoRenderer will be called for each decoded frame. 'nullptr' disables
// rendering of this stream.
diff --git a/webrtc/video_send_stream.h b/webrtc/video_send_stream.h
index 1c37390..04f4fea 100644
--- a/webrtc/video_send_stream.h
+++ b/webrtc/video_send_stream.h
@@ -67,7 +67,7 @@
struct Config {
Config() = delete;
- explicit Config(newapi::Transport* send_transport)
+ explicit Config(Transport* send_transport)
: send_transport(send_transport) {}
std::string ToString() const;
@@ -121,7 +121,7 @@
} rtp;
// Transport for outgoing packets.
- newapi::Transport* send_transport = nullptr;
+ Transport* send_transport = nullptr;
// Callback for overuse and normal usage based on the jitter of incoming
// captured frames. 'nullptr' disables the callback.
diff --git a/webrtc/voice_engine/channel.cc b/webrtc/voice_engine/channel.cc
index fa44785..ee17058 100644
--- a/webrtc/voice_engine/channel.cc
+++ b/webrtc/voice_engine/channel.cc
@@ -214,8 +214,8 @@
return 0;
}
-int
-Channel::SendPacket(const void *data, size_t len)
+bool
+Channel::SendRtp(const uint8_t *data, size_t len)
{
WEBRTC_TRACE(kTraceStream, kTraceVoice, VoEId(_instanceId,_channelId),
"Channel::SendPacket(channel=%d, len=%" PRIuS ")", len);
@@ -227,55 +227,54 @@
WEBRTC_TRACE(kTraceError, kTraceVoice, VoEId(_instanceId,_channelId),
"Channel::SendPacket() failed to send RTP packet due to"
" invalid transport object");
- return -1;
+ return false;
}
uint8_t* bufferToSendPtr = (uint8_t*)data;
size_t bufferLength = len;
- int n = _transportPtr->SendPacket(bufferToSendPtr, bufferLength);
- if (n < 0) {
+ if (!_transportPtr->SendRtp(bufferToSendPtr, bufferLength)) {
std::string transport_name =
_externalTransport ? "external transport" : "WebRtc sockets";
WEBRTC_TRACE(kTraceError, kTraceVoice,
VoEId(_instanceId,_channelId),
"Channel::SendPacket() RTP transmission using %s failed",
transport_name.c_str());
- return -1;
+ return false;
}
- return n;
+ return true;
}
-int
-Channel::SendRTCPPacket(const void *data, size_t len)
+bool
+Channel::SendRtcp(const uint8_t *data, size_t len)
{
WEBRTC_TRACE(kTraceStream, kTraceVoice, VoEId(_instanceId,_channelId),
- "Channel::SendRTCPPacket(len=%" PRIuS ")", len);
+ "Channel::SendRtcp(len=%" PRIuS ")", len);
CriticalSectionScoped cs(&_callbackCritSect);
if (_transportPtr == NULL)
{
WEBRTC_TRACE(kTraceError, kTraceVoice,
VoEId(_instanceId,_channelId),
- "Channel::SendRTCPPacket() failed to send RTCP packet"
+ "Channel::SendRtcp() failed to send RTCP packet"
" due to invalid transport object");
- return -1;
+ return false;
}
uint8_t* bufferToSendPtr = (uint8_t*)data;
size_t bufferLength = len;
- int n = _transportPtr->SendRTCPPacket(bufferToSendPtr, bufferLength);
+ int n = _transportPtr->SendRtcp(bufferToSendPtr, bufferLength);
if (n < 0) {
std::string transport_name =
_externalTransport ? "external transport" : "WebRtc sockets";
WEBRTC_TRACE(kTraceInfo, kTraceVoice,
VoEId(_instanceId,_channelId),
- "Channel::SendRTCPPacket() transmission using %s failed",
+ "Channel::SendRtcp() transmission using %s failed",
transport_name.c_str());
- return -1;
+ return false;
}
- return n;
+ return true;
}
void Channel::OnPlayTelephoneEvent(uint8_t event,
@@ -3708,24 +3707,6 @@
return 0;
}
-int32_t
-Channel::SendPacketRaw(const void *data, size_t len, bool RTCP)
-{
- CriticalSectionScoped cs(&_callbackCritSect);
- if (_transportPtr == NULL)
- {
- return -1;
- }
- if (!RTCP)
- {
- return _transportPtr->SendPacket(data, len);
- }
- else
- {
- return _transportPtr->SendRTCPPacket(data, len);
- }
-}
-
void Channel::UpdatePlayoutTimestamp(bool rtcp) {
uint32_t playout_timestamp = 0;
diff --git a/webrtc/voice_engine/channel.h b/webrtc/voice_engine/channel.h
index bf792a5..e7e6d76 100644
--- a/webrtc/voice_engine/channel.h
+++ b/webrtc/voice_engine/channel.h
@@ -378,8 +378,8 @@
uint8_t volume) override;
// From Transport (called by the RTP/RTCP module)
- int SendPacket(const void* data, size_t len) override;
- int SendRTCPPacket(const void* data, size_t len) override;
+ bool SendRtp(const uint8_t* data, size_t len) override;
+ bool SendRtcp(const uint8_t* data, size_t len) override;
// From MixerParticipant
int32_t GetAudioFrame(int32_t id, AudioFrame* audioFrame) override;
@@ -465,7 +465,6 @@
int InsertInbandDtmfTone();
int32_t MixOrReplaceAudioWithFile(int mixingFrequency);
int32_t MixAudioWithFile(AudioFrame& audioFrame, int mixingFrequency);
- int32_t SendPacketRaw(const void *data, size_t len, bool RTCP);
void UpdatePlayoutTimestamp(bool rtcp);
void UpdatePacketDelay(uint32_t timestamp,
uint16_t sequenceNumber);
diff --git a/webrtc/voice_engine/include/voe_network.h b/webrtc/voice_engine/include/voe_network.h
index c667c7f..c5b0aeb 100644
--- a/webrtc/voice_engine/include/voe_network.h
+++ b/webrtc/voice_engine/include/voe_network.h
@@ -35,6 +35,7 @@
#define WEBRTC_VOICE_ENGINE_VOE_NETWORK_H
#include "webrtc/common_types.h"
+#include "webrtc/transport.h"
namespace webrtc {
diff --git a/webrtc/voice_engine/mock/mock_transport.h b/webrtc/voice_engine/mock/mock_transport.h
deleted file mode 100644
index c356f44..0000000
--- a/webrtc/voice_engine/mock/mock_transport.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
- *
- * Use of this source code is governed by a BSD-style license
- * that can be found in the LICENSE file in the root of the source
- * tree. An additional intellectual property rights grant can be found
- * in the file PATENTS. All contributing project authors may
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-#ifndef WEBRTC_VOICE_ENGINE_MOCK_TRANSPORT_H_
-#define WEBRTC_VOICE_ENGINE_MOCK_TRANSPORT_H_
-
-#include "testing/gmock/include/gmock/gmock.h"
-#include "webrtc/common_types.h"
-
-namespace webrtc {
-
-class MockTransport : public Transport {
- public:
- MOCK_METHOD2(SendPacket, int(const void* data, size_t len));
- MOCK_METHOD2(SendRTCPPacket, int(const void* data, size_t len));
-};
-
-} // namespace webrtc
-
-#endif // WEBRTC_VOICE_ENGINE_MOCK_TRANSPORT_H_
diff --git a/webrtc/voice_engine/test/auto_test/fakes/conference_transport.cc b/webrtc/voice_engine/test/auto_test/fakes/conference_transport.cc
index 54a6b8e..30ef265 100644
--- a/webrtc/voice_engine/test/auto_test/fakes/conference_transport.cc
+++ b/webrtc/voice_engine/test/auto_test/fakes/conference_transport.cc
@@ -108,14 +108,14 @@
EXPECT_TRUE(webrtc::VoiceEngine::Delete(local_voe_));
}
-int ConferenceTransport::SendPacket(const void* data, size_t len) {
+bool ConferenceTransport::SendRtp(const uint8_t* data, size_t len) {
StorePacket(Packet::Rtp, data, len);
- return static_cast<int>(len);
+ return true;
}
-int ConferenceTransport::SendRTCPPacket(const void* data, size_t len) {
+bool ConferenceTransport::SendRtcp(const uint8_t* data, size_t len) {
StorePacket(Packet::Rtcp, data, len);
- return static_cast<int>(len);
+ return true;
}
int ConferenceTransport::GetReceiverChannelForSsrc(unsigned int sender_ssrc)
diff --git a/webrtc/voice_engine/test/auto_test/fakes/conference_transport.h b/webrtc/voice_engine/test/auto_test/fakes/conference_transport.h
index e7afccb..2a770b2 100644
--- a/webrtc/voice_engine/test/auto_test/fakes/conference_transport.h
+++ b/webrtc/voice_engine/test/auto_test/fakes/conference_transport.h
@@ -98,8 +98,8 @@
bool GetReceiverStatistics(unsigned int id, webrtc::CallStatistics* stats);
// Inherit from class webrtc::Transport.
- int SendPacket(const void *data, size_t len) override;
- int SendRTCPPacket(const void *data, size_t len) override;
+ bool SendRtp(const uint8_t *data, size_t len) override;
+ bool SendRtcp(const uint8_t *data, size_t len) override;
private:
struct Packet {
diff --git a/webrtc/voice_engine/test/auto_test/fixtures/after_initialization_fixture.h b/webrtc/voice_engine/test/auto_test/fixtures/after_initialization_fixture.h
index 11397c1..422e550 100644
--- a/webrtc/voice_engine/test/auto_test/fixtures/after_initialization_fixture.h
+++ b/webrtc/voice_engine/test/auto_test/fixtures/after_initialization_fixture.h
@@ -41,14 +41,14 @@
~LoopBackTransport() { thread_->Stop(); }
- int SendPacket(const void* data, size_t len) override {
+ bool SendRtp(const uint8_t* data, size_t len) override {
StorePacket(Packet::Rtp, data, len);
- return static_cast<int>(len);
+ return true;
}
- int SendRTCPPacket(const void* data, size_t len) override {
+ bool SendRtcp(const uint8_t* data, size_t len) override {
StorePacket(Packet::Rtcp, data, len);
- return static_cast<int>(len);
+ return true;
}
void WaitForTransmittedPackets(int32_t packet_count) {
diff --git a/webrtc/voice_engine/test/auto_test/standard/rtp_rtcp_extensions.cc b/webrtc/voice_engine/test/auto_test/standard/rtp_rtcp_extensions.cc
index 4f92e06..d4700a9 100644
--- a/webrtc/voice_engine/test/auto_test/standard/rtp_rtcp_extensions.cc
+++ b/webrtc/voice_engine/test/auto_test/standard/rtp_rtcp_extensions.cc
@@ -28,7 +28,7 @@
audio_level_id_(-1),
absolute_sender_time_id_(-1) {}
- int SendPacket(const void* data, size_t len) override {
+ bool SendRtp(const uint8_t* data, size_t len) override {
webrtc::RTPHeader header;
if (parser_->Parse(reinterpret_cast<const uint8_t*>(data), len, &header)) {
bool ok = true;
@@ -48,11 +48,11 @@
}
// received_packets_ count all packets we receive.
++received_packets_;
- return static_cast<int>(len);
+ return true;
}
- int SendRTCPPacket(const void* data, size_t len) override {
- return static_cast<int>(len);
+ bool SendRtcp(const uint8_t* data, size_t len) override {
+ return true;
}
void SetAudioLevelId(int id) {
diff --git a/webrtc/voice_engine/voice_engine_fixture.h b/webrtc/voice_engine/voice_engine_fixture.h
index 4ddcf69..2967678 100644
--- a/webrtc/voice_engine/voice_engine_fixture.h
+++ b/webrtc/voice_engine/voice_engine_fixture.h
@@ -10,9 +10,9 @@
#include "testing/gtest/include/gtest/gtest.h"
#include "webrtc/modules/audio_device/include/fake_audio_device.h"
+#include "webrtc/test/mock_transport.h"
#include "webrtc/voice_engine/include/voe_base.h"
#include "webrtc/voice_engine/include/voe_network.h"
-#include "webrtc/voice_engine/mock/mock_transport.h"
#include "webrtc/voice_engine/mock/mock_voe_observer.h"
namespace webrtc {