| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2004 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2004 The WebRTC project authors. All Rights Reserved. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
| 5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
| 6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
| 7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
| 8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
| 9 */ | 9 */ |
| 10 | 10 |
| (...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 334 } | 334 } |
| 335 | 335 |
| 336 TEST_F(WebRtcVideoEngine2Test, UseExternalFactoryForVp8WhenSupported) { | 336 TEST_F(WebRtcVideoEngine2Test, UseExternalFactoryForVp8WhenSupported) { |
| 337 cricket::FakeWebRtcVideoEncoderFactory encoder_factory; | 337 cricket::FakeWebRtcVideoEncoderFactory encoder_factory; |
| 338 encoder_factory.AddSupportedVideoCodecType("VP8"); | 338 encoder_factory.AddSupportedVideoCodecType("VP8"); |
| 339 cricket::VideoSendParameters parameters; | 339 cricket::VideoSendParameters parameters; |
| 340 parameters.codecs.push_back(kVp8Codec); | 340 parameters.codecs.push_back(kVp8Codec); |
| 341 | 341 |
| 342 std::unique_ptr<VideoMediaChannel> channel( | 342 std::unique_ptr<VideoMediaChannel> channel( |
| 343 SetUpForExternalEncoderFactory(&encoder_factory, parameters.codecs)); | 343 SetUpForExternalEncoderFactory(&encoder_factory, parameters.codecs)); |
| 344 channel->OnReadyToSend(true); | |
| 345 | 344 |
| 346 EXPECT_TRUE( | 345 EXPECT_TRUE( |
| 347 channel->AddSendStream(cricket::StreamParams::CreateLegacy(kSsrc))); | 346 channel->AddSendStream(cricket::StreamParams::CreateLegacy(kSsrc))); |
| 348 EXPECT_EQ(0, encoder_factory.GetNumCreatedEncoders()); | 347 EXPECT_EQ(0, encoder_factory.GetNumCreatedEncoders()); |
| 349 EXPECT_TRUE(channel->SetSend(true)); | 348 EXPECT_TRUE(channel->SetSend(true)); |
| 350 cricket::FakeVideoCapturer capturer; | 349 cricket::FakeVideoCapturer capturer; |
| 351 EXPECT_TRUE(channel->SetVideoSend(kSsrc, true, nullptr, &capturer)); | 350 EXPECT_TRUE(channel->SetVideoSend(kSsrc, true, nullptr, &capturer)); |
| 352 EXPECT_EQ(cricket::CS_RUNNING, | 351 EXPECT_EQ(cricket::CS_RUNNING, |
| 353 capturer.Start(capturer.GetSupportedFormats()->front())); | 352 capturer.Start(capturer.GetSupportedFormats()->front())); |
| 354 EXPECT_TRUE(capturer.CaptureFrame()); | 353 EXPECT_TRUE(capturer.CaptureFrame()); |
| (...skipping 507 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 862 class WebRtcVideoChannel2Test : public WebRtcVideoEngine2Test { | 861 class WebRtcVideoChannel2Test : public WebRtcVideoEngine2Test { |
| 863 public: | 862 public: |
| 864 WebRtcVideoChannel2Test() : WebRtcVideoChannel2Test("") {} | 863 WebRtcVideoChannel2Test() : WebRtcVideoChannel2Test("") {} |
| 865 explicit WebRtcVideoChannel2Test(const char* field_trials) | 864 explicit WebRtcVideoChannel2Test(const char* field_trials) |
| 866 : WebRtcVideoEngine2Test(field_trials), last_ssrc_(0) {} | 865 : WebRtcVideoEngine2Test(field_trials), last_ssrc_(0) {} |
| 867 void SetUp() override { | 866 void SetUp() override { |
| 868 fake_call_.reset(new FakeCall(webrtc::Call::Config(&event_log_))); | 867 fake_call_.reset(new FakeCall(webrtc::Call::Config(&event_log_))); |
| 869 engine_.Init(); | 868 engine_.Init(); |
| 870 channel_.reset( | 869 channel_.reset( |
| 871 engine_.CreateChannel(fake_call_.get(), MediaConfig(), VideoOptions())); | 870 engine_.CreateChannel(fake_call_.get(), MediaConfig(), VideoOptions())); |
| 872 channel_->OnReadyToSend(true); | |
| 873 last_ssrc_ = 123; | 871 last_ssrc_ = 123; |
| 874 send_parameters_.codecs = engine_.codecs(); | 872 send_parameters_.codecs = engine_.codecs(); |
| 875 recv_parameters_.codecs = engine_.codecs(); | 873 recv_parameters_.codecs = engine_.codecs(); |
| 876 ASSERT_TRUE(channel_->SetSendParameters(send_parameters_)); | 874 ASSERT_TRUE(channel_->SetSendParameters(send_parameters_)); |
| 877 } | 875 } |
| 878 | 876 |
| 879 protected: | 877 protected: |
| 880 FakeVideoSendStream* AddSendStream() { | 878 FakeVideoSendStream* AddSendStream() { |
| 881 return AddSendStream(StreamParams::CreateLegacy(++last_ssrc_)); | 879 return AddSendStream(StreamParams::CreateLegacy(++last_ssrc_)); |
| 882 } | 880 } |
| (...skipping 795 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1678 FakeVideoSendStream* stream = AddSendStream(); | 1676 FakeVideoSendStream* stream = AddSendStream(); |
| 1679 EXPECT_FALSE(stream->GetConfig().suspend_below_min_bitrate); | 1677 EXPECT_FALSE(stream->GetConfig().suspend_below_min_bitrate); |
| 1680 } | 1678 } |
| 1681 | 1679 |
| 1682 TEST_F(WebRtcVideoChannel2Test, SetMediaConfigSuspendBelowMinBitrate) { | 1680 TEST_F(WebRtcVideoChannel2Test, SetMediaConfigSuspendBelowMinBitrate) { |
| 1683 MediaConfig media_config = MediaConfig(); | 1681 MediaConfig media_config = MediaConfig(); |
| 1684 media_config.video.suspend_below_min_bitrate = true; | 1682 media_config.video.suspend_below_min_bitrate = true; |
| 1685 | 1683 |
| 1686 channel_.reset( | 1684 channel_.reset( |
| 1687 engine_.CreateChannel(fake_call_.get(), media_config, VideoOptions())); | 1685 engine_.CreateChannel(fake_call_.get(), media_config, VideoOptions())); |
| 1688 channel_->OnReadyToSend(true); | |
| 1689 | 1686 |
| 1690 channel_->SetSendParameters(send_parameters_); | 1687 channel_->SetSendParameters(send_parameters_); |
| 1691 | 1688 |
| 1692 FakeVideoSendStream* stream = AddSendStream(); | 1689 FakeVideoSendStream* stream = AddSendStream(); |
| 1693 EXPECT_TRUE(stream->GetConfig().suspend_below_min_bitrate); | 1690 EXPECT_TRUE(stream->GetConfig().suspend_below_min_bitrate); |
| 1694 | 1691 |
| 1695 media_config.video.suspend_below_min_bitrate = false; | 1692 media_config.video.suspend_below_min_bitrate = false; |
| 1696 channel_.reset( | 1693 channel_.reset( |
| 1697 engine_.CreateChannel(fake_call_.get(), media_config, VideoOptions())); | 1694 engine_.CreateChannel(fake_call_.get(), media_config, VideoOptions())); |
| 1698 channel_->OnReadyToSend(true); | |
| 1699 | 1695 |
| 1700 channel_->SetSendParameters(send_parameters_); | 1696 channel_->SetSendParameters(send_parameters_); |
| 1701 | 1697 |
| 1702 stream = AddSendStream(); | 1698 stream = AddSendStream(); |
| 1703 EXPECT_FALSE(stream->GetConfig().suspend_below_min_bitrate); | 1699 EXPECT_FALSE(stream->GetConfig().suspend_below_min_bitrate); |
| 1704 } | 1700 } |
| 1705 | 1701 |
| 1706 TEST_F(WebRtcVideoChannel2Test, Vp8DenoisingEnabledByDefault) { | 1702 TEST_F(WebRtcVideoChannel2Test, Vp8DenoisingEnabledByDefault) { |
| 1707 FakeVideoSendStream* stream = AddSendStream(); | 1703 FakeVideoSendStream* stream = AddSendStream(); |
| 1708 webrtc::VideoCodecVP8 vp8_settings; | 1704 webrtc::VideoCodecVP8 vp8_settings; |
| (...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1973 } | 1969 } |
| 1974 | 1970 |
| 1975 TEST_F(WebRtcVideoChannel2Test, AdaptsOnOveruseAndChangeResolution) { | 1971 TEST_F(WebRtcVideoChannel2Test, AdaptsOnOveruseAndChangeResolution) { |
| 1976 cricket::VideoCodec codec = kVp8Codec; | 1972 cricket::VideoCodec codec = kVp8Codec; |
| 1977 cricket::VideoSendParameters parameters; | 1973 cricket::VideoSendParameters parameters; |
| 1978 parameters.codecs.push_back(codec); | 1974 parameters.codecs.push_back(codec); |
| 1979 | 1975 |
| 1980 MediaConfig media_config = MediaConfig(); | 1976 MediaConfig media_config = MediaConfig(); |
| 1981 channel_.reset( | 1977 channel_.reset( |
| 1982 engine_.CreateChannel(fake_call_.get(), media_config, VideoOptions())); | 1978 engine_.CreateChannel(fake_call_.get(), media_config, VideoOptions())); |
| 1983 channel_->OnReadyToSend(true); | |
| 1984 ASSERT_TRUE(channel_->SetSendParameters(parameters)); | 1979 ASSERT_TRUE(channel_->SetSendParameters(parameters)); |
| 1985 | 1980 |
| 1986 AddSendStream(); | 1981 AddSendStream(); |
| 1987 | 1982 |
| 1988 cricket::FakeVideoCapturer capturer; | 1983 cricket::FakeVideoCapturer capturer; |
| 1989 ASSERT_TRUE(channel_->SetVideoSend(last_ssrc_, true, nullptr, &capturer)); | 1984 ASSERT_TRUE(channel_->SetVideoSend(last_ssrc_, true, nullptr, &capturer)); |
| 1990 ASSERT_EQ(cricket::CS_RUNNING, | 1985 ASSERT_EQ(cricket::CS_RUNNING, |
| 1991 capturer.Start(capturer.GetSupportedFormats()->front())); | 1986 capturer.Start(capturer.GetSupportedFormats()->front())); |
| 1992 ASSERT_TRUE(channel_->SetSend(true)); | 1987 ASSERT_TRUE(channel_->SetSend(true)); |
| 1993 | 1988 |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2048 } | 2043 } |
| 2049 | 2044 |
| 2050 TEST_F(WebRtcVideoChannel2Test, PreviousAdaptationDoesNotApplyToScreenshare) { | 2045 TEST_F(WebRtcVideoChannel2Test, PreviousAdaptationDoesNotApplyToScreenshare) { |
| 2051 cricket::VideoCodec codec = kVp8Codec; | 2046 cricket::VideoCodec codec = kVp8Codec; |
| 2052 cricket::VideoSendParameters parameters; | 2047 cricket::VideoSendParameters parameters; |
| 2053 parameters.codecs.push_back(codec); | 2048 parameters.codecs.push_back(codec); |
| 2054 | 2049 |
| 2055 MediaConfig media_config = MediaConfig(); | 2050 MediaConfig media_config = MediaConfig(); |
| 2056 channel_.reset( | 2051 channel_.reset( |
| 2057 engine_.CreateChannel(fake_call_.get(), media_config, VideoOptions())); | 2052 engine_.CreateChannel(fake_call_.get(), media_config, VideoOptions())); |
| 2058 channel_->OnReadyToSend(true); | |
| 2059 ASSERT_TRUE(channel_->SetSendParameters(parameters)); | 2053 ASSERT_TRUE(channel_->SetSendParameters(parameters)); |
| 2060 | 2054 |
| 2061 AddSendStream(); | 2055 AddSendStream(); |
| 2062 | 2056 |
| 2063 cricket::FakeVideoCapturer capturer; | 2057 cricket::FakeVideoCapturer capturer; |
| 2064 ASSERT_EQ(cricket::CS_RUNNING, | 2058 ASSERT_EQ(cricket::CS_RUNNING, |
| 2065 capturer.Start(capturer.GetSupportedFormats()->front())); | 2059 capturer.Start(capturer.GetSupportedFormats()->front())); |
| 2066 ASSERT_TRUE(channel_->SetSend(true)); | 2060 ASSERT_TRUE(channel_->SetSend(true)); |
| 2067 cricket::VideoOptions camera_options; | 2061 cricket::VideoOptions camera_options; |
| 2068 camera_options.is_screencast = rtc::Optional<bool>(false); | 2062 camera_options.is_screencast = rtc::Optional<bool>(false); |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2116 cricket::VideoCodec codec = kVp8Codec; | 2110 cricket::VideoCodec codec = kVp8Codec; |
| 2117 cricket::VideoSendParameters parameters; | 2111 cricket::VideoSendParameters parameters; |
| 2118 parameters.codecs.push_back(codec); | 2112 parameters.codecs.push_back(codec); |
| 2119 | 2113 |
| 2120 MediaConfig media_config = MediaConfig(); | 2114 MediaConfig media_config = MediaConfig(); |
| 2121 if (!enable_overuse) { | 2115 if (!enable_overuse) { |
| 2122 media_config.video.enable_cpu_overuse_detection = false; | 2116 media_config.video.enable_cpu_overuse_detection = false; |
| 2123 } | 2117 } |
| 2124 channel_.reset( | 2118 channel_.reset( |
| 2125 engine_.CreateChannel(fake_call_.get(), media_config, VideoOptions())); | 2119 engine_.CreateChannel(fake_call_.get(), media_config, VideoOptions())); |
| 2126 channel_->OnReadyToSend(true); | |
| 2127 | 2120 |
| 2128 EXPECT_TRUE(channel_->SetSendParameters(parameters)); | 2121 EXPECT_TRUE(channel_->SetSendParameters(parameters)); |
| 2129 | 2122 |
| 2130 AddSendStream(); | 2123 AddSendStream(); |
| 2131 | 2124 |
| 2132 cricket::FakeVideoCapturer capturer; | 2125 cricket::FakeVideoCapturer capturer; |
| 2133 VideoOptions options; | 2126 VideoOptions options; |
| 2134 options.is_screencast = rtc::Optional<bool>(is_screenshare); | 2127 options.is_screencast = rtc::Optional<bool>(is_screenshare); |
| 2135 EXPECT_TRUE(channel_->SetVideoSend(last_ssrc_, true, &options, &capturer)); | 2128 EXPECT_TRUE(channel_->SetVideoSend(last_ssrc_, true, &options, &capturer)); |
| 2136 cricket::VideoFormat capture_format = capturer.GetSupportedFormats()->front(); | 2129 cricket::VideoFormat capture_format = capturer.GetSupportedFormats()->front(); |
| (...skipping 1476 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3613 | 3606 |
| 3614 class WebRtcVideoChannel2SimulcastTest : public testing::Test { | 3607 class WebRtcVideoChannel2SimulcastTest : public testing::Test { |
| 3615 public: | 3608 public: |
| 3616 WebRtcVideoChannel2SimulcastTest() | 3609 WebRtcVideoChannel2SimulcastTest() |
| 3617 : fake_call_(webrtc::Call::Config(&event_log_)) {} | 3610 : fake_call_(webrtc::Call::Config(&event_log_)) {} |
| 3618 | 3611 |
| 3619 void SetUp() override { | 3612 void SetUp() override { |
| 3620 engine_.Init(); | 3613 engine_.Init(); |
| 3621 channel_.reset( | 3614 channel_.reset( |
| 3622 engine_.CreateChannel(&fake_call_, MediaConfig(), VideoOptions())); | 3615 engine_.CreateChannel(&fake_call_, MediaConfig(), VideoOptions())); |
| 3623 channel_->OnReadyToSend(true); | |
| 3624 last_ssrc_ = 123; | 3616 last_ssrc_ = 123; |
| 3625 } | 3617 } |
| 3626 | 3618 |
| 3627 protected: | 3619 protected: |
| 3628 void VerifySimulcastSettings(const VideoCodec& codec, | 3620 void VerifySimulcastSettings(const VideoCodec& codec, |
| 3629 int capture_width, | 3621 int capture_width, |
| 3630 int capture_height, | 3622 int capture_height, |
| 3631 size_t num_configured_streams, | 3623 size_t num_configured_streams, |
| 3632 size_t expected_num_streams) { | 3624 size_t expected_num_streams) { |
| 3633 cricket::VideoSendParameters parameters; | 3625 cricket::VideoSendParameters parameters; |
| (...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3746 TEST_F(WebRtcVideoChannel2SimulcastTest, SetSendCodecsWith3SimulcastStreams) { | 3738 TEST_F(WebRtcVideoChannel2SimulcastTest, SetSendCodecsWith3SimulcastStreams) { |
| 3747 VerifySimulcastSettings(kVp8Codec, 1280, 720, 3, 3); | 3739 VerifySimulcastSettings(kVp8Codec, 1280, 720, 3, 3); |
| 3748 } | 3740 } |
| 3749 | 3741 |
| 3750 // Test that we normalize send codec format size in simulcast. | 3742 // Test that we normalize send codec format size in simulcast. |
| 3751 TEST_F(WebRtcVideoChannel2SimulcastTest, SetSendCodecsWithOddSizeInSimulcast) { | 3743 TEST_F(WebRtcVideoChannel2SimulcastTest, SetSendCodecsWithOddSizeInSimulcast) { |
| 3752 cricket::VideoCodec codec(kVp8Codec); | 3744 cricket::VideoCodec codec(kVp8Codec); |
| 3753 VerifySimulcastSettings(codec, 541, 271, 2, 2); | 3745 VerifySimulcastSettings(codec, 541, 271, 2, 2); |
| 3754 } | 3746 } |
| 3755 } // namespace cricket | 3747 } // namespace cricket |
| OLD | NEW |