Fix regression where retransmission bitrate is no longer estimated.

BUG=1813
R=mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1530004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4095 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
stefan@webrtc.org 2013-05-23 13:36:55 +00:00
parent d445d2229e
commit 5c58f63d3f
3 changed files with 13 additions and 10 deletions

View File

@ -519,12 +519,12 @@ int32_t RTPSender::ReSendPacket(uint16_t packet_id, uint32_t min_resend_time) {
length)) {
// We can't send the packet right now.
// We will be called when it is time.
return 0;
return length;
}
}
if (SendPacketToNetwork(buffer_to_send_ptr, length)) {
return 0;
return length;
}
return -1;
}

View File

@ -413,7 +413,7 @@ TEST_F(RtpSenderTest, TrafficSmoothingRetransmits) {
const int kStoredTimeInMs = 100;
fake_clock_.AdvanceTimeMilliseconds(kStoredTimeInMs);
EXPECT_EQ(0, rtp_sender_->ReSendPacket(kSeqNum));
EXPECT_EQ(rtp_length, rtp_sender_->ReSendPacket(kSeqNum));
EXPECT_EQ(0, transport_.packets_sent_);
rtp_sender_->TimeToSendPacket(kSeqNum, capture_time_ms);

View File

@ -115,6 +115,10 @@ void ViEAutoTest::ViERtpRtcpStandardTest()
ViETest::Log("Set start sequence number: %u", startSequenceNumber);
EXPECT_EQ(0, ViE.rtp_rtcp->SetStartSequenceNumber(
tbChannel.videoChannel, startSequenceNumber));
const unsigned int kVideoSsrc = 123456;
// Set an SSRC to avoid issues with collisions.
EXPECT_EQ(0, ViE.rtp_rtcp->SetLocalSSRC(tbChannel.videoChannel, kVideoSsrc,
webrtc::kViEStreamTypeNormal, 0));
myTransport.EnableSequenceNumberCheck();
@ -263,7 +267,7 @@ void ViEAutoTest::ViERtpRtcpStandardTest()
if (FLAGS_include_timing_dependent_tests) {
EXPECT_GT(sentTotalBitrate, 0u);
EXPECT_GE(sentFecBitrate, 10u);
EXPECT_GT(sentFecBitrate, 0u);
EXPECT_EQ(sentNackBitrate, 0u);
}
@ -279,12 +283,11 @@ void ViEAutoTest::ViERtpRtcpStandardTest()
tbChannel.videoChannel, sentTotalBitrate, sentVideoBitrate,
sentFecBitrate, sentNackBitrate));
// TODO(holmer): Write a non-flaky verification of this API.
// numberOfErrors += ViETest::TestError(sentTotalBitrate > 0 &&
// sentFecBitrate == 0 &&
// sentNackBitrate > 0,
// "ERROR: %s at line %d",
// __FUNCTION__, __LINE__);
if (FLAGS_include_timing_dependent_tests) {
EXPECT_GT(sentTotalBitrate, 0u);
EXPECT_EQ(sentFecBitrate, 0u);
EXPECT_GT(sentNackBitrate, 0u);
}
EXPECT_EQ(0, ViE.base->StopReceive(tbChannel.videoChannel));
EXPECT_EQ(0, ViE.base->StopSend(tbChannel.videoChannel));