| Index: webrtc/video/video_quality_test.cc
|
| diff --git a/webrtc/video/video_quality_test.cc b/webrtc/video/video_quality_test.cc
|
| index 16d7356053d4af34d18c63a9b44bf79277c62afb..b7860121beebd0045014ac2620049c9920b053e1 100644
|
| --- a/webrtc/video/video_quality_test.cc
|
| +++ b/webrtc/video/video_quality_test.cc
|
| @@ -153,8 +153,7 @@ class VideoAnalyzer : public PacketReceiver,
|
| int selected_sl,
|
| int selected_tl,
|
| bool is_quick_test_enabled,
|
| - Clock* clock,
|
| - std::string rtp_dump_name)
|
| + Clock* clock)
|
| : transport_(transport),
|
| receiver_(nullptr),
|
| call_(nullptr),
|
| @@ -190,9 +189,7 @@ class VideoAnalyzer : public PacketReceiver,
|
| is_quick_test_enabled_(is_quick_test_enabled),
|
| stats_polling_thread_(&PollStatsThread, this, "StatsPoller"),
|
| comparison_available_event_(false, false),
|
| - done_(true, false),
|
| - clock_(clock),
|
| - start_ms_(clock->TimeInMilliseconds()) {
|
| + done_(true, false) {
|
| // Create thread pool for CPU-expensive PSNR/SSIM calculations.
|
|
|
| // Try to use about as many threads as cores, but leave kMinCoresLeft alone,
|
| @@ -218,12 +215,6 @@ class VideoAnalyzer : public PacketReceiver,
|
| thread->Start();
|
| comparison_thread_pool_.push_back(thread);
|
| }
|
| -
|
| - if (!rtp_dump_name.empty()) {
|
| - fprintf(stdout, "Writing rtp dump to %s\n", rtp_dump_name.c_str());
|
| - rtp_file_writer_.reset(test::RtpFileWriter::Create(
|
| - test::RtpFileWriter::kRtpDump, rtp_dump_name));
|
| - }
|
| }
|
|
|
| ~VideoAnalyzer() {
|
| @@ -277,15 +268,6 @@ class VideoAnalyzer : public PacketReceiver,
|
| return receiver_->DeliverPacket(media_type, packet, length, packet_time);
|
| }
|
|
|
| - if (rtp_file_writer_) {
|
| - test::RtpPacket p;
|
| - memcpy(p.data, packet, length);
|
| - p.length = length;
|
| - p.original_length = length;
|
| - p.time_ms = clock_->TimeInMilliseconds() - start_ms_;
|
| - rtp_file_writer_->WritePacket(&p);
|
| - }
|
| -
|
| RtpUtility::RtpHeaderParser parser(packet, length);
|
| RTPHeader header;
|
| parser.Parse(&header);
|
| @@ -1120,10 +1102,6 @@ class VideoAnalyzer : public PacketReceiver,
|
| rtc::Event comparison_available_event_;
|
| std::deque<FrameComparison> comparisons_ GUARDED_BY(comparison_lock_);
|
| rtc::Event done_;
|
| -
|
| - std::unique_ptr<test::RtpFileWriter> rtp_file_writer_;
|
| - Clock* const clock_;
|
| - const int64_t start_ms_;
|
| };
|
|
|
| class Vp8EncoderFactory : public cricket::WebRtcVideoEncoderFactory {
|
| @@ -1808,10 +1786,17 @@ void VideoQualityTest::RunWithAnalyzer(const Params& params) {
|
| &recv_transport]() {
|
| CreateCalls(call_config, call_config);
|
|
|
| + std::unique_ptr<test::RtpFileWriter> rtp_file_writer;
|
| + if (!params_.logging.rtp_dump_name.empty()) {
|
| + LOG(LS_INFO) << "Writing rtp dump to " << params_.logging.rtp_dump_name;
|
| + rtp_file_writer.reset(test::RtpFileWriter::Create(
|
| + test::RtpFileWriter::kRtpDump, params_.logging.rtp_dump_name));
|
| + }
|
| +
|
| send_transport = rtc::MakeUnique<test::LayerFilteringTransport>(
|
| &task_queue_, params_.pipe, sender_call_.get(), kPayloadTypeVP8,
|
| kPayloadTypeVP9, params_.video.selected_tl, params_.ss.selected_sl,
|
| - payload_type_map_);
|
| + payload_type_map_, std::move(rtp_file_writer));
|
|
|
| recv_transport = rtc::MakeUnique<test::DirectTransport>(
|
| &task_queue_, params_.pipe, receiver_call_.get(), payload_type_map_);
|
| @@ -1831,8 +1816,7 @@ void VideoQualityTest::RunWithAnalyzer(const Params& params) {
|
| kVideoSendSsrcs[params_.ss.selected_stream],
|
| kSendRtxSsrcs[params_.ss.selected_stream],
|
| static_cast<size_t>(params_.ss.selected_stream), params.ss.selected_sl,
|
| - params_.video.selected_tl, is_quick_test_enabled, clock_,
|
| - params_.logging.rtp_dump_name);
|
| + params_.video.selected_tl, is_quick_test_enabled, clock_);
|
|
|
| task_queue_.SendTask([&]() {
|
| analyzer->SetCall(sender_call_.get());
|
| @@ -1994,12 +1978,19 @@ void VideoQualityTest::RunWithRenderers(const Params& params) {
|
|
|
| CreateCalls(call_config, call_config);
|
|
|
| + std::unique_ptr<test::RtpFileWriter> rtp_file_writer;
|
| + if (!params_.logging.rtp_dump_name.empty()) {
|
| + LOG(LS_INFO) << "Writing rtp dump to " << params_.logging.rtp_dump_name;
|
| + rtp_file_writer.reset(test::RtpFileWriter::Create(
|
| + test::RtpFileWriter::kRtpDump, params_.logging.rtp_dump_name));
|
| + }
|
| +
|
| // TODO(minyue): consider if this is a good transport even for audio only
|
| // calls.
|
| send_transport = rtc::MakeUnique<test::LayerFilteringTransport>(
|
| &task_queue_, params.pipe, sender_call_.get(), kPayloadTypeVP8,
|
| kPayloadTypeVP9, params.video.selected_tl, params_.ss.selected_sl,
|
| - payload_type_map_);
|
| + payload_type_map_, std::move(rtp_file_writer));
|
|
|
| recv_transport = rtc::MakeUnique<test::DirectTransport>(
|
| &task_queue_, params_.pipe, receiver_call_.get(), payload_type_map_);
|
|
|