Chromium Code Reviews| Index: webrtc/video/video_send_stream_tests.cc |
| diff --git a/webrtc/video/video_send_stream_tests.cc b/webrtc/video/video_send_stream_tests.cc |
| index c55809955723e50953d0adce8026c32050ea400c..6e60fff9542582d965079ca361c2dbb520f6bd66 100644 |
| --- a/webrtc/video/video_send_stream_tests.cc |
| +++ b/webrtc/video/video_send_stream_tests.cc |
| @@ -1821,6 +1821,7 @@ class VP9HeaderObeserver : public test::SendTest { |
| std::vector<VideoReceiveStream::Config>* receive_configs, |
| VideoEncoderConfig* encoder_config) override { |
| encoder_config->encoder_specific_settings = &vp9_settings_; |
| + encoder_config->content_type = VideoEncoderConfig::ContentType::kScreen; |
| send_config->encoder_settings.encoder = vp9_encoder_.get(); |
| send_config->encoder_settings.payload_name = "VP9"; |
| send_config->encoder_settings.payload_type = kVp9PayloadType; |
| @@ -1891,10 +1892,70 @@ TEST_F(VideoSendStreamTest, DISABLED_VP9FlexMode) { |
| EXPECT_TRUE(vp9videoHeader->flexible_mode); |
| observation_complete_->Set(); |
| } |
| + } test; |
| + |
| + RunBaseTest(&test); |
| +} |
| + |
| +TEST_F(VideoSendStreamTest, VP9FlexModeHasPictureId) { |
| + class FlexibleMode : public VP9HeaderObeserver { |
| + void ModifyConfigsHook( |
| + VideoSendStream::Config* send_config, |
| + std::vector<VideoReceiveStream::Config>* receive_configs, |
| + VideoEncoderConfig* encoder_config) override { |
| + vp9_settings_.flexibleMode = true; |
| + } |
| + |
| + void InspectHeader(RTPVideoHeaderVP9* vp9videoHeader) override { |
| + EXPECT_TRUE(vp9videoHeader->picture_id != kNoPictureId); |
|
sprang_webrtc
2015/09/15 15:41:22
EXPECT_NE(kNoPictureId, vp9videoHeader->picture_id
philipel
2015/09/16 09:35:54
Done.
|
| + observation_complete_->Set(); |
| + } |
| + } test; |
| + |
| + RunBaseTest(&test); |
| +} |
| + |
| +TEST_F(VideoSendStreamTest, VP9FlexModeRefCount) { |
| + class FlexibleMode : public VP9HeaderObeserver { |
| + void ModifyConfigsHook( |
| + VideoSendStream::Config* send_config, |
| + std::vector<VideoReceiveStream::Config>* receive_configs, |
| + VideoEncoderConfig* encoder_config) override { |
| + vp9_settings_.flexibleMode = true; |
| + } |
| + |
| + void InspectHeader(RTPVideoHeaderVP9* vp9videoHeader) override { |
| + EXPECT_TRUE(vp9videoHeader->flexible_mode); |
| + if (vp9videoHeader->inter_pic_predicted) { |
| + EXPECT_GT(vp9videoHeader->num_ref_pics, 0u); |
| + observation_complete_->Set(); |
| + } |
| + } |
| + } test; |
| + |
| + RunBaseTest(&test); |
| +} |
| + |
| +TEST_F(VideoSendStreamTest, VP9FlexModeRefs) { |
| + class FlexibleMode : public VP9HeaderObeserver { |
| + void ModifyConfigsHook( |
| + VideoSendStream::Config* send_config, |
| + std::vector<VideoReceiveStream::Config>* receive_configs, |
| + VideoEncoderConfig* encoder_config) override { |
| + vp9_settings_.flexibleMode = true; |
| + } |
| + |
| + void InspectHeader(RTPVideoHeaderVP9* vp9videoHeader) override { |
| + EXPECT_TRUE(vp9videoHeader->flexible_mode); |
| + if (vp9videoHeader->inter_pic_predicted) { |
| + EXPECT_GT(vp9videoHeader->num_ref_pics, 0u); |
| + observation_complete_->Set(); |
| + } |
| + } |
| } test; |
| RunBaseTest(&test); |
| } |
| -} // namespace webrtc |
| +} // namespace webrtc |