void GetStats() {
SendAndReceive(DefaultCodec());
cricket::VideoMediaInfo info;
- EXPECT_TRUE(channel_->GetStats(&info));
+ EXPECT_TRUE(channel_->GetStats(cricket::StatsOptions(), &info));
ASSERT_EQ(1U, info.senders.size());
// TODO(whyuan): bytes_sent and bytes_rcvd are different. Are both payload?
EXPECT_EQ(0.0, info.senders[0].fraction_lost);
EXPECT_EQ(0, info.senders[0].firs_rcvd);
EXPECT_EQ(0, info.senders[0].nacks_rcvd);
- EXPECT_EQ(DefaultCodec().width, info.senders[0].frame_width);
- EXPECT_EQ(DefaultCodec().height, info.senders[0].frame_height);
+ EXPECT_EQ(DefaultCodec().width, info.senders[0].send_frame_width);
+ EXPECT_EQ(DefaultCodec().height, info.senders[0].send_frame_height);
EXPECT_GT(info.senders[0].framerate_input, 0);
EXPECT_GT(info.senders[0].framerate_sent, 0);
EXPECT_FRAME_ON_RENDERER_WAIT(
renderer2, 1, DefaultCodec().width, DefaultCodec().height, kTimeout);
cricket::VideoMediaInfo info;
- EXPECT_TRUE(channel_->GetStats(&info));
+ EXPECT_TRUE(channel_->GetStats(cricket::StatsOptions(), &info));
ASSERT_EQ(1U, info.senders.size());
// TODO(whyuan): bytes_sent and bytes_rcvd are different. Are both payload?
EXPECT_EQ(0.0, info.senders[0].fraction_lost);
EXPECT_EQ(0, info.senders[0].firs_rcvd);
EXPECT_EQ(0, info.senders[0].nacks_rcvd);
- EXPECT_EQ(DefaultCodec().width, info.senders[0].frame_width);
- EXPECT_EQ(DefaultCodec().height, info.senders[0].frame_height);
+ EXPECT_EQ(DefaultCodec().width, info.senders[0].send_frame_width);
+ EXPECT_EQ(DefaultCodec().height, info.senders[0].send_frame_height);
EXPECT_GT(info.senders[0].framerate_input, 0);
EXPECT_GT(info.senders[0].framerate_sent, 0);
// Get stats, and make sure they are correct for two senders.
cricket::VideoMediaInfo info;
- EXPECT_TRUE(channel_->GetStats(&info));
+ EXPECT_TRUE(channel_->GetStats(cricket::StatsOptions(), &info));
ASSERT_EQ(2U, info.senders.size());
EXPECT_EQ(NumRtpPackets(),
info.senders[0].packets_sent + info.senders[1].packets_sent);
EXPECT_EQ(1U, info.senders[0].ssrcs().size());
EXPECT_EQ(1234U, info.senders[0].ssrcs()[0]);
- EXPECT_EQ(DefaultCodec().width, info.senders[0].frame_width);
- EXPECT_EQ(DefaultCodec().height, info.senders[0].frame_height);
+ EXPECT_EQ(DefaultCodec().width, info.senders[0].send_frame_width);
+ EXPECT_EQ(DefaultCodec().height, info.senders[0].send_frame_height);
EXPECT_EQ(1U, info.senders[1].ssrcs().size());
EXPECT_EQ(5678U, info.senders[1].ssrcs()[0]);
- EXPECT_EQ(kTestWidth, info.senders[1].frame_width);
- EXPECT_EQ(kTestHeight, info.senders[1].frame_height);
+ EXPECT_EQ(kTestWidth, info.senders[1].send_frame_width);
+ EXPECT_EQ(kTestHeight, info.senders[1].send_frame_height);
// The capturer must be unregistered here as it runs out of it's scope next.
EXPECT_TRUE(channel_->SetCapturer(5678, NULL));
}
// some (e.g. 1) of these 3 frames after the renderer is set again.
EXPECT_GT_FRAME_ON_RENDERER_WAIT(
renderer1, 2, DefaultCodec().width, DefaultCodec().height, kTimeout);
+ // Detach |renderer1| before exit as there might be frames come late.
+ EXPECT_TRUE(channel_->SetRenderer(kSsrc, NULL));
}
// Tests the behavior of incoming streams in a conference scenario.