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 2097 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2108 ASSERT_EQ(1u, fake_call_->GetVideoSendStreams().size()); | 2108 ASSERT_EQ(1u, fake_call_->GetVideoSendStreams().size()); |
2109 FakeVideoSendStream* send_stream = fake_call_->GetVideoSendStreams().front(); | 2109 FakeVideoSendStream* send_stream = fake_call_->GetVideoSendStreams().front(); |
2110 | 2110 |
2111 EXPECT_TRUE(capturer.CaptureCustomFrame(1280, 720, cricket::FOURCC_I420)); | 2111 EXPECT_TRUE(capturer.CaptureCustomFrame(1280, 720, cricket::FOURCC_I420)); |
2112 EXPECT_EQ(1, send_stream->GetNumberOfSwappedFrames()); | 2112 EXPECT_EQ(1, send_stream->GetNumberOfSwappedFrames()); |
2113 EXPECT_EQ(1280, send_stream->GetLastWidth()); | 2113 EXPECT_EQ(1280, send_stream->GetLastWidth()); |
2114 EXPECT_EQ(720, send_stream->GetLastHeight()); | 2114 EXPECT_EQ(720, send_stream->GetLastHeight()); |
2115 | 2115 |
2116 // Trigger overuse. | 2116 // Trigger overuse. |
2117 rtc::VideoSinkWants wants; | 2117 rtc::VideoSinkWants wants; |
2118 wants.max_pixel_count = rtc::Optional<int>( | 2118 wants.max_pixel_count = |
2119 send_stream->GetLastWidth() * send_stream->GetLastHeight() - 1); | 2119 send_stream->GetLastWidth() * send_stream->GetLastHeight() - 1; |
2120 send_stream->InjectVideoSinkWants(wants); | 2120 send_stream->InjectVideoSinkWants(wants); |
2121 EXPECT_TRUE(capturer.CaptureCustomFrame(1280, 720, cricket::FOURCC_I420)); | 2121 EXPECT_TRUE(capturer.CaptureCustomFrame(1280, 720, cricket::FOURCC_I420)); |
2122 EXPECT_EQ(2, send_stream->GetNumberOfSwappedFrames()); | 2122 EXPECT_EQ(2, send_stream->GetNumberOfSwappedFrames()); |
2123 EXPECT_EQ(1280 * 3 / 4, send_stream->GetLastWidth()); | 2123 EXPECT_EQ(1280 * 3 / 4, send_stream->GetLastWidth()); |
2124 EXPECT_EQ(720 * 3 / 4, send_stream->GetLastHeight()); | 2124 EXPECT_EQ(720 * 3 / 4, send_stream->GetLastHeight()); |
2125 | 2125 |
2126 // Trigger overuse again. | 2126 // Trigger overuse again. |
2127 wants.max_pixel_count = rtc::Optional<int>( | 2127 wants.max_pixel_count = |
2128 send_stream->GetLastWidth() * send_stream->GetLastHeight() - 1); | 2128 send_stream->GetLastWidth() * send_stream->GetLastHeight() - 1; |
2129 send_stream->InjectVideoSinkWants(wants); | 2129 send_stream->InjectVideoSinkWants(wants); |
2130 EXPECT_TRUE(capturer.CaptureCustomFrame(1280, 720, cricket::FOURCC_I420)); | 2130 EXPECT_TRUE(capturer.CaptureCustomFrame(1280, 720, cricket::FOURCC_I420)); |
2131 EXPECT_EQ(3, send_stream->GetNumberOfSwappedFrames()); | 2131 EXPECT_EQ(3, send_stream->GetNumberOfSwappedFrames()); |
2132 EXPECT_EQ(1280 * 2 / 4, send_stream->GetLastWidth()); | 2132 EXPECT_EQ(1280 * 2 / 4, send_stream->GetLastWidth()); |
2133 EXPECT_EQ(720 * 2 / 4, send_stream->GetLastHeight()); | 2133 EXPECT_EQ(720 * 2 / 4, send_stream->GetLastHeight()); |
2134 | 2134 |
2135 // Change input resolution. | 2135 // Change input resolution. |
2136 EXPECT_TRUE(capturer.CaptureCustomFrame(1284, 724, cricket::FOURCC_I420)); | 2136 EXPECT_TRUE(capturer.CaptureCustomFrame(1284, 724, cricket::FOURCC_I420)); |
2137 EXPECT_EQ(4, send_stream->GetNumberOfSwappedFrames()); | 2137 EXPECT_EQ(4, send_stream->GetNumberOfSwappedFrames()); |
2138 EXPECT_EQ(1284 / 2, send_stream->GetLastWidth()); | 2138 EXPECT_EQ(1284 / 2, send_stream->GetLastWidth()); |
2139 EXPECT_EQ(724 / 2, send_stream->GetLastHeight()); | 2139 EXPECT_EQ(724 / 2, send_stream->GetLastHeight()); |
2140 | 2140 |
2141 // Trigger underuse which should go back up in resolution. | 2141 // Trigger underuse which should go back up in resolution. |
2142 int current_pixel_count = | 2142 int current_pixel_count = |
2143 send_stream->GetLastWidth() * send_stream->GetLastHeight(); | 2143 send_stream->GetLastWidth() * send_stream->GetLastHeight(); |
2144 // Cap the max to 4x the pixel count (assuming max 1/2 x 1/2 scale downs) | 2144 // Cap the max to 4x the pixel count (assuming max 1/2 x 1/2 scale downs) |
2145 // of the current stream, so we don't take too large steps. | 2145 // of the current stream, so we don't take too large steps. |
2146 wants.max_pixel_count = rtc::Optional<int>(current_pixel_count * 4); | 2146 wants.max_pixel_count = current_pixel_count * 4; |
2147 // Default step down is 3/5 pixel count, so go up by 5/3. | 2147 // Default step down is 3/5 pixel count, so go up by 5/3. |
2148 wants.target_pixel_count = rtc::Optional<int>((current_pixel_count * 5) / 3); | 2148 wants.target_pixel_count = rtc::Optional<int>((current_pixel_count * 5) / 3); |
2149 send_stream->InjectVideoSinkWants(wants); | 2149 send_stream->InjectVideoSinkWants(wants); |
2150 EXPECT_TRUE(capturer.CaptureCustomFrame(1284, 724, cricket::FOURCC_I420)); | 2150 EXPECT_TRUE(capturer.CaptureCustomFrame(1284, 724, cricket::FOURCC_I420)); |
2151 EXPECT_EQ(5, send_stream->GetNumberOfSwappedFrames()); | 2151 EXPECT_EQ(5, send_stream->GetNumberOfSwappedFrames()); |
2152 EXPECT_EQ(1284 * 3 / 4, send_stream->GetLastWidth()); | 2152 EXPECT_EQ(1284 * 3 / 4, send_stream->GetLastWidth()); |
2153 EXPECT_EQ(724 * 3 / 4, send_stream->GetLastHeight()); | 2153 EXPECT_EQ(724 * 3 / 4, send_stream->GetLastHeight()); |
2154 | 2154 |
2155 // Trigger underuse again, should go back up to full resolution. | 2155 // Trigger underuse again, should go back up to full resolution. |
2156 current_pixel_count = | 2156 current_pixel_count = |
2157 send_stream->GetLastWidth() * send_stream->GetLastHeight(); | 2157 send_stream->GetLastWidth() * send_stream->GetLastHeight(); |
2158 wants.max_pixel_count = rtc::Optional<int>(current_pixel_count * 4); | 2158 wants.max_pixel_count = current_pixel_count * 4; |
2159 wants.target_pixel_count = rtc::Optional<int>((current_pixel_count * 5) / 3); | 2159 wants.target_pixel_count = rtc::Optional<int>((current_pixel_count * 5) / 3); |
2160 send_stream->InjectVideoSinkWants(wants); | 2160 send_stream->InjectVideoSinkWants(wants); |
2161 EXPECT_TRUE(capturer.CaptureCustomFrame(1284, 724, cricket::FOURCC_I420)); | 2161 EXPECT_TRUE(capturer.CaptureCustomFrame(1284, 724, cricket::FOURCC_I420)); |
2162 EXPECT_EQ(6, send_stream->GetNumberOfSwappedFrames()); | 2162 EXPECT_EQ(6, send_stream->GetNumberOfSwappedFrames()); |
2163 EXPECT_EQ(1284, send_stream->GetLastWidth()); | 2163 EXPECT_EQ(1284, send_stream->GetLastWidth()); |
2164 EXPECT_EQ(724, send_stream->GetLastHeight()); | 2164 EXPECT_EQ(724, send_stream->GetLastHeight()); |
2165 | 2165 |
2166 EXPECT_TRUE(channel_->SetVideoSend(last_ssrc_, true, nullptr, nullptr)); | 2166 EXPECT_TRUE(channel_->SetVideoSend(last_ssrc_, true, nullptr, nullptr)); |
2167 } | 2167 } |
2168 | 2168 |
(...skipping 23 matching lines...) Expand all Loading... |
2192 ASSERT_EQ(1u, fake_call_->GetVideoSendStreams().size()); | 2192 ASSERT_EQ(1u, fake_call_->GetVideoSendStreams().size()); |
2193 FakeVideoSendStream* send_stream = fake_call_->GetVideoSendStreams().front(); | 2193 FakeVideoSendStream* send_stream = fake_call_->GetVideoSendStreams().front(); |
2194 | 2194 |
2195 EXPECT_TRUE(capturer.CaptureCustomFrame(1280, 720, cricket::FOURCC_I420)); | 2195 EXPECT_TRUE(capturer.CaptureCustomFrame(1280, 720, cricket::FOURCC_I420)); |
2196 EXPECT_EQ(1, send_stream->GetNumberOfSwappedFrames()); | 2196 EXPECT_EQ(1, send_stream->GetNumberOfSwappedFrames()); |
2197 EXPECT_EQ(1280, send_stream->GetLastWidth()); | 2197 EXPECT_EQ(1280, send_stream->GetLastWidth()); |
2198 EXPECT_EQ(720, send_stream->GetLastHeight()); | 2198 EXPECT_EQ(720, send_stream->GetLastHeight()); |
2199 | 2199 |
2200 // Trigger overuse. | 2200 // Trigger overuse. |
2201 rtc::VideoSinkWants wants; | 2201 rtc::VideoSinkWants wants; |
2202 wants.max_pixel_count = rtc::Optional<int>( | 2202 wants.max_pixel_count = |
2203 send_stream->GetLastWidth() * send_stream->GetLastHeight() - 1); | 2203 send_stream->GetLastWidth() * send_stream->GetLastHeight() - 1; |
2204 send_stream->InjectVideoSinkWants(wants); | 2204 send_stream->InjectVideoSinkWants(wants); |
2205 EXPECT_TRUE(capturer.CaptureCustomFrame(1280, 720, cricket::FOURCC_I420)); | 2205 EXPECT_TRUE(capturer.CaptureCustomFrame(1280, 720, cricket::FOURCC_I420)); |
2206 EXPECT_EQ(2, send_stream->GetNumberOfSwappedFrames()); | 2206 EXPECT_EQ(2, send_stream->GetNumberOfSwappedFrames()); |
2207 EXPECT_EQ(1280 * 3 / 4, send_stream->GetLastWidth()); | 2207 EXPECT_EQ(1280 * 3 / 4, send_stream->GetLastWidth()); |
2208 EXPECT_EQ(720 * 3 / 4, send_stream->GetLastHeight()); | 2208 EXPECT_EQ(720 * 3 / 4, send_stream->GetLastHeight()); |
2209 | 2209 |
2210 // Switch to screen share. Expect no CPU adaptation. | 2210 // Switch to screen share. Expect no CPU adaptation. |
2211 cricket::FakeVideoCapturer screen_share(true); | 2211 cricket::FakeVideoCapturer screen_share(true); |
2212 ASSERT_EQ(cricket::CS_RUNNING, | 2212 ASSERT_EQ(cricket::CS_RUNNING, |
2213 screen_share.Start(screen_share.GetSupportedFormats()->front())); | 2213 screen_share.Start(screen_share.GetSupportedFormats()->front())); |
(...skipping 21 matching lines...) Expand all Loading... |
2235 send_stream = fake_call_->GetVideoSendStreams().front(); | 2235 send_stream = fake_call_->GetVideoSendStreams().front(); |
2236 EXPECT_EQ(1, send_stream->GetNumberOfSwappedFrames()); | 2236 EXPECT_EQ(1, send_stream->GetNumberOfSwappedFrames()); |
2237 EXPECT_EQ(1280 * 3 / 4, send_stream->GetLastWidth()); | 2237 EXPECT_EQ(1280 * 3 / 4, send_stream->GetLastWidth()); |
2238 EXPECT_EQ(720 * 3 / 4, send_stream->GetLastHeight()); | 2238 EXPECT_EQ(720 * 3 / 4, send_stream->GetLastHeight()); |
2239 | 2239 |
2240 EXPECT_TRUE(channel_->SetVideoSend(last_ssrc_, true, nullptr, nullptr)); | 2240 EXPECT_TRUE(channel_->SetVideoSend(last_ssrc_, true, nullptr, nullptr)); |
2241 } | 2241 } |
2242 | 2242 |
2243 void WebRtcVideoChannel2Test::TestCpuAdaptation(bool enable_overuse, | 2243 void WebRtcVideoChannel2Test::TestCpuAdaptation(bool enable_overuse, |
2244 bool is_screenshare) { | 2244 bool is_screenshare) { |
| 2245 const int kDefaultFps = 30; |
2245 cricket::VideoCodec codec = GetEngineCodec("VP8"); | 2246 cricket::VideoCodec codec = GetEngineCodec("VP8"); |
2246 cricket::VideoSendParameters parameters; | 2247 cricket::VideoSendParameters parameters; |
2247 parameters.codecs.push_back(codec); | 2248 parameters.codecs.push_back(codec); |
2248 | 2249 |
2249 MediaConfig media_config = GetMediaConfig(); | 2250 MediaConfig media_config = GetMediaConfig(); |
2250 if (enable_overuse) { | 2251 if (enable_overuse) { |
2251 media_config.video.enable_cpu_overuse_detection = true; | 2252 media_config.video.enable_cpu_overuse_detection = true; |
2252 } | 2253 } |
2253 channel_.reset( | 2254 channel_.reset( |
2254 engine_.CreateChannel(fake_call_.get(), media_config, VideoOptions())); | 2255 engine_.CreateChannel(fake_call_.get(), media_config, VideoOptions())); |
2255 channel_->OnReadyToSend(true); | 2256 channel_->OnReadyToSend(true); |
2256 | 2257 |
2257 EXPECT_TRUE(channel_->SetSendParameters(parameters)); | 2258 EXPECT_TRUE(channel_->SetSendParameters(parameters)); |
2258 | 2259 |
2259 AddSendStream(); | 2260 AddSendStream(); |
2260 | 2261 |
2261 cricket::FakeVideoCapturer capturer; | 2262 cricket::FakeVideoCapturer capturer; |
2262 VideoOptions options; | 2263 VideoOptions options; |
2263 options.is_screencast = rtc::Optional<bool>(is_screenshare); | 2264 options.is_screencast = rtc::Optional<bool>(is_screenshare); |
2264 EXPECT_TRUE(channel_->SetVideoSend(last_ssrc_, true, &options, &capturer)); | 2265 EXPECT_TRUE(channel_->SetVideoSend(last_ssrc_, true, &options, &capturer)); |
2265 cricket::VideoFormat capture_format = capturer.GetSupportedFormats()->front(); | 2266 cricket::VideoFormat capture_format = capturer.GetSupportedFormats()->front(); |
| 2267 capture_format.interval = rtc::kNumNanosecsPerSec / kDefaultFps; |
2266 EXPECT_EQ(cricket::CS_RUNNING, capturer.Start(capture_format)); | 2268 EXPECT_EQ(cricket::CS_RUNNING, capturer.Start(capture_format)); |
2267 | 2269 |
2268 EXPECT_TRUE(channel_->SetSend(true)); | 2270 EXPECT_TRUE(channel_->SetSend(true)); |
2269 | 2271 |
2270 FakeVideoSendStream* send_stream = fake_call_->GetVideoSendStreams().front(); | 2272 FakeVideoSendStream* send_stream = fake_call_->GetVideoSendStreams().front(); |
2271 | 2273 |
2272 if (!enable_overuse || is_screenshare) { | 2274 if (!enable_overuse) { |
2273 EXPECT_FALSE(send_stream->resolution_scaling_enabled()); | 2275 EXPECT_FALSE(send_stream->resolution_scaling_enabled()); |
| 2276 EXPECT_FALSE(send_stream->framerate_scaling_enabled()); |
| 2277 EXPECT_EQ(is_screenshare, send_stream->framerate_scaling_enabled()); |
2274 | 2278 |
2275 EXPECT_TRUE(capturer.CaptureFrame()); | 2279 EXPECT_TRUE(capturer.CaptureFrame()); |
2276 EXPECT_EQ(1, send_stream->GetNumberOfSwappedFrames()); | 2280 EXPECT_EQ(1, send_stream->GetNumberOfSwappedFrames()); |
2277 | 2281 |
2278 EXPECT_EQ(capture_format.width, send_stream->GetLastWidth()); | 2282 EXPECT_EQ(capture_format.width, send_stream->GetLastWidth()); |
2279 EXPECT_EQ(capture_format.height, send_stream->GetLastHeight()); | 2283 EXPECT_EQ(capture_format.height, send_stream->GetLastHeight()); |
2280 | 2284 |
2281 EXPECT_TRUE(channel_->SetVideoSend(last_ssrc_, true, nullptr, nullptr)); | 2285 EXPECT_TRUE(channel_->SetVideoSend(last_ssrc_, true, nullptr, nullptr)); |
2282 return; | 2286 return; |
2283 } | 2287 } |
2284 | 2288 |
2285 EXPECT_TRUE(send_stream->resolution_scaling_enabled()); | 2289 if (is_screenshare) { |
| 2290 EXPECT_FALSE(send_stream->resolution_scaling_enabled()); |
| 2291 EXPECT_TRUE(send_stream->framerate_scaling_enabled()); |
| 2292 } else { |
| 2293 EXPECT_TRUE(send_stream->resolution_scaling_enabled()); |
| 2294 EXPECT_FALSE(send_stream->framerate_scaling_enabled()); |
| 2295 } |
| 2296 |
2286 // Trigger overuse. | 2297 // Trigger overuse. |
2287 ASSERT_EQ(1u, fake_call_->GetVideoSendStreams().size()); | 2298 ASSERT_EQ(1u, fake_call_->GetVideoSendStreams().size()); |
2288 | 2299 |
2289 rtc::VideoSinkWants wants; | 2300 rtc::VideoSinkWants wants; |
2290 wants.max_pixel_count = | 2301 if (is_screenshare) { |
2291 rtc::Optional<int>(capture_format.width * capture_format.height - 1); | 2302 wants.max_framerate_fps = (kDefaultFps * 2) / 3; |
| 2303 } else { |
| 2304 wants.max_pixel_count = capture_format.width * capture_format.height - 1; |
| 2305 } |
2292 send_stream->InjectVideoSinkWants(wants); | 2306 send_stream->InjectVideoSinkWants(wants); |
2293 | 2307 |
2294 EXPECT_TRUE(capturer.CaptureFrame()); | 2308 for (int i = 0; i < kDefaultFps; ++i) |
2295 EXPECT_EQ(1, send_stream->GetNumberOfSwappedFrames()); | 2309 EXPECT_TRUE(capturer.CaptureFrame()); |
2296 | 2310 |
2297 EXPECT_TRUE(capturer.CaptureFrame()); | 2311 if (is_screenshare) { |
2298 EXPECT_EQ(2, send_stream->GetNumberOfSwappedFrames()); | 2312 // Drops every third frame. |
2299 | 2313 EXPECT_EQ(kDefaultFps * 2 / 3, send_stream->GetNumberOfSwappedFrames()); |
2300 EXPECT_LT(send_stream->GetLastWidth(), capture_format.width); | 2314 EXPECT_EQ(send_stream->GetLastWidth(), capture_format.width); |
2301 EXPECT_LT(send_stream->GetLastHeight(), capture_format.height); | 2315 EXPECT_EQ(send_stream->GetLastHeight(), capture_format.height); |
| 2316 } else { |
| 2317 EXPECT_EQ(kDefaultFps, send_stream->GetNumberOfSwappedFrames()); |
| 2318 EXPECT_LT(send_stream->GetLastWidth(), capture_format.width); |
| 2319 EXPECT_LT(send_stream->GetLastHeight(), capture_format.height); |
| 2320 } |
2302 | 2321 |
2303 // Trigger underuse which should go back to normal resolution. | 2322 // Trigger underuse which should go back to normal resolution. |
2304 int last_pixel_count = | 2323 int last_pixel_count = |
2305 send_stream->GetLastWidth() * send_stream->GetLastHeight(); | 2324 send_stream->GetLastWidth() * send_stream->GetLastHeight(); |
2306 wants.max_pixel_count = rtc::Optional<int>(last_pixel_count * 4); | 2325 if (is_screenshare) { |
2307 wants.target_pixel_count = rtc::Optional<int>((last_pixel_count * 5) / 3); | 2326 wants.max_framerate_fps = kDefaultFps; |
| 2327 } else { |
| 2328 wants.max_pixel_count = last_pixel_count * 4; |
| 2329 wants.target_pixel_count.emplace((last_pixel_count * 5) / 3); |
| 2330 } |
2308 send_stream->InjectVideoSinkWants(wants); | 2331 send_stream->InjectVideoSinkWants(wants); |
2309 | 2332 |
2310 EXPECT_TRUE(capturer.CaptureFrame()); | 2333 for (int i = 0; i < kDefaultFps; ++i) |
2311 EXPECT_EQ(3, send_stream->GetNumberOfSwappedFrames()); | 2334 EXPECT_TRUE(capturer.CaptureFrame()); |
| 2335 |
| 2336 if (is_screenshare) { |
| 2337 EXPECT_EQ(kDefaultFps + (kDefaultFps * 2 / 3), |
| 2338 send_stream->GetNumberOfSwappedFrames()); |
| 2339 } else { |
| 2340 EXPECT_EQ(kDefaultFps * 2, send_stream->GetNumberOfSwappedFrames()); |
| 2341 } |
2312 | 2342 |
2313 EXPECT_EQ(capture_format.width, send_stream->GetLastWidth()); | 2343 EXPECT_EQ(capture_format.width, send_stream->GetLastWidth()); |
2314 EXPECT_EQ(capture_format.height, send_stream->GetLastHeight()); | 2344 EXPECT_EQ(capture_format.height, send_stream->GetLastHeight()); |
2315 | 2345 |
2316 EXPECT_TRUE(channel_->SetVideoSend(last_ssrc_, true, nullptr, nullptr)); | 2346 EXPECT_TRUE(channel_->SetVideoSend(last_ssrc_, true, nullptr, nullptr)); |
2317 } | 2347 } |
2318 | 2348 |
2319 TEST_F(WebRtcVideoChannel2Test, EstimatesNtpStartTimeCorrectly) { | 2349 TEST_F(WebRtcVideoChannel2Test, EstimatesNtpStartTimeCorrectly) { |
2320 // Start at last timestamp to verify that wraparounds are estimated correctly. | 2350 // Start at last timestamp to verify that wraparounds are estimated correctly. |
2321 static const uint32_t kInitialTimestamp = 0xFFFFFFFFu; | 2351 static const uint32_t kInitialTimestamp = 0xFFFFFFFFu; |
(...skipping 2032 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4354 } | 4384 } |
4355 | 4385 |
4356 TEST_F(WebRtcVideoChannel2SimulcastTest, SetSendCodecsForSimulcastScreenshare) { | 4386 TEST_F(WebRtcVideoChannel2SimulcastTest, SetSendCodecsForSimulcastScreenshare) { |
4357 webrtc::test::ScopedFieldTrials override_field_trials_( | 4387 webrtc::test::ScopedFieldTrials override_field_trials_( |
4358 "WebRTC-SimulcastScreenshare/Enabled/"); | 4388 "WebRTC-SimulcastScreenshare/Enabled/"); |
4359 VerifySimulcastSettings(cricket::VideoCodec("VP8"), 1280, 720, 3, 2, true, | 4389 VerifySimulcastSettings(cricket::VideoCodec("VP8"), 1280, 720, 3, 2, true, |
4360 true); | 4390 true); |
4361 } | 4391 } |
4362 | 4392 |
4363 } // namespace cricket | 4393 } // namespace cricket |
OLD | NEW |