OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2013 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 #include <algorithm> | 10 #include <algorithm> |
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
204 video_receive_configs_[0].pre_render_callback = &pre_render_callback; | 204 video_receive_configs_[0].pre_render_callback = &pre_render_callback; |
205 video_receive_configs_[0].renderer = &renderer; | 205 video_receive_configs_[0].renderer = &renderer; |
206 | 206 |
207 CreateVideoStreams(); | 207 CreateVideoStreams(); |
208 Start(); | 208 Start(); |
209 | 209 |
210 // Create frames that are smaller than the send width/height, this is done to | 210 // Create frames that are smaller than the send width/height, this is done to |
211 // check that the callbacks are done after processing video. | 211 // check that the callbacks are done after processing video. |
212 std::unique_ptr<test::FrameGenerator> frame_generator( | 212 std::unique_ptr<test::FrameGenerator> frame_generator( |
213 test::FrameGenerator::CreateChromaGenerator(kWidth, kHeight)); | 213 test::FrameGenerator::CreateChromaGenerator(kWidth, kHeight)); |
214 video_send_stream_->Input()->IncomingCapturedFrame( | 214 test::FrameForwarder frame_forwarder; |
215 *frame_generator->NextFrame()); | 215 video_send_stream_->SetSource(&frame_forwarder); |
| 216 |
| 217 frame_forwarder.IncomingCapturedFrame(*frame_generator->NextFrame()); |
216 EXPECT_TRUE(pre_render_callback.Wait()) | 218 EXPECT_TRUE(pre_render_callback.Wait()) |
217 << "Timed out while waiting for pre-render callback."; | 219 << "Timed out while waiting for pre-render callback."; |
218 EXPECT_TRUE(renderer.Wait()) | 220 EXPECT_TRUE(renderer.Wait()) |
219 << "Timed out while waiting for the frame to render."; | 221 << "Timed out while waiting for the frame to render."; |
220 | 222 |
221 Stop(); | 223 Stop(); |
222 | 224 |
223 sender_transport.StopSending(); | 225 sender_transport.StopSending(); |
224 receiver_transport.StopSending(); | 226 receiver_transport.StopSending(); |
225 | 227 |
(...skipping 23 matching lines...) Expand all Loading... |
249 CreateMatchingReceiveConfigs(&receiver_transport); | 251 CreateMatchingReceiveConfigs(&receiver_transport); |
250 video_receive_configs_[0].renderer = &renderer; | 252 video_receive_configs_[0].renderer = &renderer; |
251 | 253 |
252 CreateVideoStreams(); | 254 CreateVideoStreams(); |
253 Start(); | 255 Start(); |
254 | 256 |
255 std::unique_ptr<test::FrameGenerator> frame_generator( | 257 std::unique_ptr<test::FrameGenerator> frame_generator( |
256 test::FrameGenerator::CreateChromaGenerator( | 258 test::FrameGenerator::CreateChromaGenerator( |
257 video_encoder_config_.streams[0].width, | 259 video_encoder_config_.streams[0].width, |
258 video_encoder_config_.streams[0].height)); | 260 video_encoder_config_.streams[0].height)); |
259 video_send_stream_->Input()->IncomingCapturedFrame( | 261 test::FrameForwarder frame_forwarder; |
260 *frame_generator->NextFrame()); | 262 video_send_stream_->SetSource(&frame_forwarder); |
| 263 frame_forwarder.IncomingCapturedFrame(*frame_generator->NextFrame()); |
261 | 264 |
262 EXPECT_TRUE(renderer.Wait()) | 265 EXPECT_TRUE(renderer.Wait()) |
263 << "Timed out while waiting for the frame to render."; | 266 << "Timed out while waiting for the frame to render."; |
264 | 267 |
265 Stop(); | 268 Stop(); |
266 | 269 |
267 sender_transport.StopSending(); | 270 sender_transport.StopSending(); |
268 receiver_transport.StopSending(); | 271 receiver_transport.StopSending(); |
269 | 272 |
270 DestroyStreams(); | 273 DestroyStreams(); |
(...skipping 1023 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1294 std::unique_ptr<VideoDecoder>(decoder.decoder)); | 1297 std::unique_ptr<VideoDecoder>(decoder.decoder)); |
1295 receive_config.decoders.push_back(decoder); | 1298 receive_config.decoders.push_back(decoder); |
1296 | 1299 |
1297 UpdateReceiveConfig(i, &receive_config); | 1300 UpdateReceiveConfig(i, &receive_config); |
1298 | 1301 |
1299 receive_streams[i] = | 1302 receive_streams[i] = |
1300 receiver_call->CreateVideoReceiveStream(std::move(receive_config)); | 1303 receiver_call->CreateVideoReceiveStream(std::move(receive_config)); |
1301 receive_streams[i]->Start(); | 1304 receive_streams[i]->Start(); |
1302 | 1305 |
1303 frame_generators[i] = test::FrameGeneratorCapturer::Create( | 1306 frame_generators[i] = test::FrameGeneratorCapturer::Create( |
1304 send_streams[i]->Input(), width, height, 30, | 1307 width, height, 30, Clock::GetRealTimeClock()); |
1305 Clock::GetRealTimeClock()); | 1308 send_streams[i]->SetSource(frame_generators[i]); |
1306 frame_generators[i]->Start(); | 1309 frame_generators[i]->Start(); |
1307 } | 1310 } |
1308 | 1311 |
1309 Wait(); | 1312 Wait(); |
1310 | 1313 |
1311 for (size_t i = 0; i < kNumStreams; ++i) { | 1314 for (size_t i = 0; i < kNumStreams; ++i) { |
1312 frame_generators[i]->Stop(); | 1315 frame_generators[i]->Stop(); |
1313 sender_call->DestroyVideoSendStream(send_streams[i]); | 1316 sender_call->DestroyVideoSendStream(send_streams[i]); |
1314 receiver_call->DestroyVideoReceiveStream(receive_streams[i]); | 1317 receiver_call->DestroyVideoReceiveStream(receive_streams[i]); |
1315 delete frame_generators[i]; | 1318 delete frame_generators[i]; |
(...skipping 439 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1755 video_send_config_.post_encode_callback = &post_encode_observer; | 1758 video_send_config_.post_encode_callback = &post_encode_observer; |
1756 video_receive_configs_[0].pre_decode_callback = &pre_decode_observer; | 1759 video_receive_configs_[0].pre_decode_callback = &pre_decode_observer; |
1757 | 1760 |
1758 CreateVideoStreams(); | 1761 CreateVideoStreams(); |
1759 Start(); | 1762 Start(); |
1760 | 1763 |
1761 std::unique_ptr<test::FrameGenerator> frame_generator( | 1764 std::unique_ptr<test::FrameGenerator> frame_generator( |
1762 test::FrameGenerator::CreateChromaGenerator( | 1765 test::FrameGenerator::CreateChromaGenerator( |
1763 video_encoder_config_.streams[0].width, | 1766 video_encoder_config_.streams[0].width, |
1764 video_encoder_config_.streams[0].height)); | 1767 video_encoder_config_.streams[0].height)); |
1765 video_send_stream_->Input()->IncomingCapturedFrame( | 1768 test::FrameForwarder forwarder; |
1766 *frame_generator->NextFrame()); | 1769 video_send_stream_->SetSource(&forwarder); |
| 1770 forwarder.IncomingCapturedFrame(*frame_generator->NextFrame()); |
1767 | 1771 |
1768 EXPECT_TRUE(post_encode_observer.Wait()) | 1772 EXPECT_TRUE(post_encode_observer.Wait()) |
1769 << "Timed out while waiting for send-side encoded-frame callback."; | 1773 << "Timed out while waiting for send-side encoded-frame callback."; |
1770 | 1774 |
1771 EXPECT_TRUE(pre_decode_observer.Wait()) | 1775 EXPECT_TRUE(pre_decode_observer.Wait()) |
1772 << "Timed out while waiting for pre-decode encoded-frame callback."; | 1776 << "Timed out while waiting for pre-decode encoded-frame callback."; |
1773 | 1777 |
1774 post_encode_observer.ExpectEqualFrames(pre_decode_observer); | 1778 post_encode_observer.ExpectEqualFrames(pre_decode_observer); |
1775 | 1779 |
1776 Stop(); | 1780 Stop(); |
(...skipping 1954 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3731 private: | 3735 private: |
3732 bool video_observed_; | 3736 bool video_observed_; |
3733 bool audio_observed_; | 3737 bool audio_observed_; |
3734 SequenceNumberUnwrapper unwrapper_; | 3738 SequenceNumberUnwrapper unwrapper_; |
3735 std::set<int64_t> received_packet_ids_; | 3739 std::set<int64_t> received_packet_ids_; |
3736 } test; | 3740 } test; |
3737 | 3741 |
3738 RunBaseTest(&test); | 3742 RunBaseTest(&test); |
3739 } | 3743 } |
3740 } // namespace webrtc | 3744 } // namespace webrtc |
OLD | NEW |