Index: webrtc/media/engine/webrtcvideoengine2_unittest.cc |
diff --git a/webrtc/media/engine/webrtcvideoengine2_unittest.cc b/webrtc/media/engine/webrtcvideoengine2_unittest.cc |
index d765f8232e0a942bce540d1ed896cc2d8e8dc418..95d418e7983b90dc471c394bbfb00b9488798eee 100644 |
--- a/webrtc/media/engine/webrtcvideoengine2_unittest.cc |
+++ b/webrtc/media/engine/webrtcvideoengine2_unittest.cc |
@@ -348,6 +348,7 @@ TEST_F(WebRtcVideoEngine2Test, UseExternalFactoryForVp8WhenSupported) { |
EXPECT_TRUE( |
channel->AddSendStream(cricket::StreamParams::CreateLegacy(kSsrc))); |
+ ASSERT_TRUE(encoder_factory.WaitForCreatedVideoEncoders(1)); |
ASSERT_EQ(1u, encoder_factory.encoders().size()); |
EXPECT_TRUE(channel->SetSend(true)); |
@@ -356,11 +357,13 @@ TEST_F(WebRtcVideoEngine2Test, UseExternalFactoryForVp8WhenSupported) { |
EXPECT_EQ(cricket::CS_RUNNING, |
capturer.Start(capturer.GetSupportedFormats()->front())); |
EXPECT_TRUE(capturer.CaptureFrame()); |
+ // Sending one frame will have reallocated the encoder since input size |
+ // changes from a small default to the actual frame width/height. Wait for |
+ // that to happen then for the frame to be sent. |
+ ASSERT_TRUE(encoder_factory.WaitForCreatedVideoEncoders(2)); |
EXPECT_TRUE_WAIT(encoder_factory.encoders()[0]->GetNumEncodedFrames() > 0, |
kTimeout); |
- // Sending one frame will have reallocated the encoder since input size |
- // changes from a small default to the actual frame width/height. |
int num_created_encoders = encoder_factory.GetNumCreatedEncoders(); |
EXPECT_EQ(num_created_encoders, 2); |
@@ -591,12 +594,13 @@ TEST_F(WebRtcVideoEngine2Test, UsesSimulcastAdapterForVp8Factories) { |
capturer.Start(capturer.GetSupportedFormats()->front())); |
EXPECT_TRUE(capturer.CaptureFrame()); |
- EXPECT_GT(encoder_factory.encoders().size(), 1u); |
+ ASSERT_TRUE(encoder_factory.WaitForCreatedVideoEncoders(2)); |
// Verify that encoders are configured for simulcast through adapter |
// (increasing resolution and only configured to send one stream each). |
int prev_width = -1; |
for (size_t i = 0; i < encoder_factory.encoders().size(); ++i) { |
+ ASSERT_TRUE(encoder_factory.encoders()[i]->WaitForInitEncode()); |
webrtc::VideoCodec codec_settings = |
encoder_factory.encoders()[i]->GetCodecSettings(); |
EXPECT_EQ(0, codec_settings.numberOfSimulcastStreams); |
@@ -672,7 +676,8 @@ TEST_F(WebRtcVideoEngine2Test, |
capturer.Start(capturer.GetSupportedFormats()->front())); |
EXPECT_TRUE(capturer.CaptureFrame()); |
- ASSERT_GT(encoder_factory.encoders().size(), 1u); |
+ ASSERT_TRUE(encoder_factory.WaitForCreatedVideoEncoders(2)); |
+ ASSERT_TRUE(encoder_factory.encoders()[0]->WaitForInitEncode()); |
EXPECT_EQ(webrtc::kVideoCodecVP8, |
encoder_factory.encoders()[0]->GetCodecSettings().codecType); |
@@ -696,6 +701,7 @@ TEST_F(WebRtcVideoEngine2Test, |
EXPECT_TRUE( |
channel->AddSendStream(cricket::StreamParams::CreateLegacy(kSsrc))); |
ASSERT_EQ(1u, encoder_factory.encoders().size()); |
+ ASSERT_TRUE(encoder_factory.encoders()[0]->WaitForInitEncode()); |
EXPECT_EQ(webrtc::kVideoCodecH264, |
encoder_factory.encoders()[0]->GetCodecSettings().codecType); |
@@ -727,6 +733,7 @@ TEST_F(WebRtcVideoEngine2Test, SimulcastDisabledForH264) { |
ASSERT_EQ(1u, encoder_factory.encoders().size()); |
FakeWebRtcVideoEncoder* encoder = encoder_factory.encoders()[0]; |
+ ASSERT_TRUE(encoder_factory.encoders()[0]->WaitForInitEncode()); |
EXPECT_EQ(webrtc::kVideoCodecH264, encoder->GetCodecSettings().codecType); |
EXPECT_EQ(1u, encoder->GetCodecSettings().numberOfSimulcastStreams); |
channel->SetSource(ssrcs[0], nullptr); |