Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(471)

Side by Side Diff: webrtc/video/video_quality_test.cc

Issue 1542653002: Add audio streams to CallTest and a first A/V call test. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Win issue fixed. Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2015 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 <stdio.h> 10 #include <stdio.h>
(...skipping 763 matching lines...) Expand 10 before | Expand all | Expand 10 after
774 params->ss.spatial_layers.push_back(layer); 774 params->ss.spatial_layers.push_back(layer);
775 } 775 }
776 } 776 }
777 777
778 void VideoQualityTest::SetupCommon(Transport* send_transport, 778 void VideoQualityTest::SetupCommon(Transport* send_transport,
779 Transport* recv_transport) { 779 Transport* recv_transport) {
780 if (params_.logs) 780 if (params_.logs)
781 trace_to_stderr_.reset(new test::TraceToStderr); 781 trace_to_stderr_.reset(new test::TraceToStderr);
782 782
783 size_t num_streams = params_.ss.streams.size(); 783 size_t num_streams = params_.ss.streams.size();
784 CreateSendConfig(num_streams, send_transport); 784 CreateSendConfig(num_streams, 0, send_transport);
785 785
786 int payload_type; 786 int payload_type;
787 if (params_.common.codec == "VP8") { 787 if (params_.common.codec == "VP8") {
788 encoder_.reset(VideoEncoder::Create(VideoEncoder::kVp8)); 788 encoder_.reset(VideoEncoder::Create(VideoEncoder::kVp8));
789 payload_type = kPayloadTypeVP8; 789 payload_type = kPayloadTypeVP8;
790 } else if (params_.common.codec == "VP9") { 790 } else if (params_.common.codec == "VP9") {
791 encoder_.reset(VideoEncoder::Create(VideoEncoder::kVp9)); 791 encoder_.reset(VideoEncoder::Create(VideoEncoder::kVp9));
792 payload_type = kPayloadTypeVP9; 792 payload_type = kPayloadTypeVP9;
793 } else { 793 } else {
794 RTC_NOTREACHED() << "Codec not supported!"; 794 RTC_NOTREACHED() << "Codec not supported!";
(...skipping 15 matching lines...) Expand all
810 } else { 810 } else {
811 video_send_config_.rtp.extensions.push_back(RtpExtension( 811 video_send_config_.rtp.extensions.push_back(RtpExtension(
812 RtpExtension::kAbsSendTime, test::kAbsSendTimeExtensionId)); 812 RtpExtension::kAbsSendTime, test::kAbsSendTimeExtensionId));
813 } 813 }
814 814
815 video_encoder_config_.min_transmit_bitrate_bps = 815 video_encoder_config_.min_transmit_bitrate_bps =
816 params_.common.min_transmit_bps; 816 params_.common.min_transmit_bps;
817 video_encoder_config_.streams = params_.ss.streams; 817 video_encoder_config_.streams = params_.ss.streams;
818 video_encoder_config_.spatial_layers = params_.ss.spatial_layers; 818 video_encoder_config_.spatial_layers = params_.ss.spatial_layers;
819 819
820 CreateMatchingReceiveConfigs(recv_transport); 820 CreateMatchingReceiveConfigs(false, recv_transport);
821 821
822 for (size_t i = 0; i < num_streams; ++i) { 822 for (size_t i = 0; i < num_streams; ++i) {
823 video_receive_configs_[i].rtp.nack.rtp_history_ms = kNackRtpHistoryMs; 823 video_receive_configs_[i].rtp.nack.rtp_history_ms = kNackRtpHistoryMs;
824 video_receive_configs_[i].rtp.rtx[kSendRtxPayloadType].ssrc = 824 video_receive_configs_[i].rtp.rtx[kSendRtxPayloadType].ssrc =
825 kSendRtxSsrcs[i]; 825 kSendRtxSsrcs[i];
826 video_receive_configs_[i].rtp.rtx[kSendRtxPayloadType].payload_type = 826 video_receive_configs_[i].rtp.rtx[kSendRtxPayloadType].payload_type =
827 kSendRtxPayloadType; 827 kSendRtxPayloadType;
828 video_receive_configs_[i].rtp.transport_cc = params_.common.send_side_bwe; 828 video_receive_configs_[i].rtp.transport_cc = params_.common.send_side_bwe;
829 } 829 }
830 } 830 }
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
957 "Warning: Calculating PSNR and SSIM for downsized resolution " 957 "Warning: Calculating PSNR and SSIM for downsized resolution "
958 "not implemented yet! Skipping PSNR and SSIM calculations!"); 958 "not implemented yet! Skipping PSNR and SSIM calculations!");
959 } 959 }
960 960
961 VideoAnalyzer analyzer( 961 VideoAnalyzer analyzer(
962 &send_transport, params_.analyzer.test_label, 962 &send_transport, params_.analyzer.test_label,
963 disable_quality_check ? -1.1 : params_.analyzer.avg_psnr_threshold, 963 disable_quality_check ? -1.1 : params_.analyzer.avg_psnr_threshold,
964 disable_quality_check ? -1.1 : params_.analyzer.avg_ssim_threshold, 964 disable_quality_check ? -1.1 : params_.analyzer.avg_ssim_threshold,
965 params_.analyzer.test_durations_secs * params_.common.fps, 965 params_.analyzer.test_durations_secs * params_.common.fps,
966 graph_data_output_file, graph_title, 966 graph_data_output_file, graph_title,
967 kSendSsrcs[params_.ss.selected_stream]); 967 kVideoSendSsrcs[params_.ss.selected_stream]);
968 968
969 analyzer.SetReceiver(receiver_call_->Receiver()); 969 analyzer.SetReceiver(receiver_call_->Receiver());
970 send_transport.SetReceiver(&analyzer); 970 send_transport.SetReceiver(&analyzer);
971 recv_transport.SetReceiver(sender_call_->Receiver()); 971 recv_transport.SetReceiver(sender_call_->Receiver());
972 972
973 SetupCommon(&analyzer, &recv_transport); 973 SetupCommon(&analyzer, &recv_transport);
974 video_send_config_.encoding_time_observer = &analyzer; 974 video_send_config_.encoding_time_observer = &analyzer;
975 video_receive_configs_[params_.ss.selected_stream].renderer = &analyzer; 975 video_receive_configs_[params_.ss.selected_stream].renderer = &analyzer;
976 for (auto& config : video_receive_configs_) 976 for (auto& config : video_receive_configs_)
977 config.pre_decode_callback = &analyzer; 977 config.pre_decode_callback = &analyzer;
978 978
979 if (params_.screenshare.enabled) 979 if (params_.screenshare.enabled)
980 SetupScreenshare(); 980 SetupScreenshare();
981 981
982 CreateStreams(); 982 CreateVideoStreams();
983 analyzer.input_ = video_send_stream_->Input(); 983 analyzer.input_ = video_send_stream_->Input();
984 analyzer.send_stream_ = video_send_stream_; 984 analyzer.send_stream_ = video_send_stream_;
985 985
986 CreateCapturer(&analyzer); 986 CreateCapturer(&analyzer);
987 987
988 video_send_stream_->Start(); 988 video_send_stream_->Start();
989 for (VideoReceiveStream* receive_stream : video_receive_streams_) 989 for (VideoReceiveStream* receive_stream : video_receive_streams_)
990 receive_stream->Start(); 990 receive_stream->Start();
991 capturer_->Start(); 991 capturer_->Start();
992 992
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
1064 video_send_stream_->Stop(); 1064 video_send_stream_->Stop();
1065 receive_stream->Stop(); 1065 receive_stream->Stop();
1066 1066
1067 call->DestroyVideoReceiveStream(receive_stream); 1067 call->DestroyVideoReceiveStream(receive_stream);
1068 call->DestroyVideoSendStream(video_send_stream_); 1068 call->DestroyVideoSendStream(video_send_stream_);
1069 1069
1070 transport.StopSending(); 1070 transport.StopSending();
1071 } 1071 }
1072 1072
1073 } // namespace webrtc 1073 } // namespace webrtc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698