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

Side by Side Diff: webrtc/modules/video_coding/codecs/tools/video_quality_measurement.cc

Issue 2700493006: Add optional visualization file writers to VideoProcessor tests. (Closed)
Patch Set: kjellander comments 2. Created 3 years, 10 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) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 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 472 matching lines...) Expand 10 before | Expand all | Expand 10 after
483 // Exit if an invalid argument is supplied. 483 // Exit if an invalid argument is supplied.
484 if (return_code != 0) { 484 if (return_code != 0) {
485 return return_code; 485 return return_code;
486 } 486 }
487 487
488 PrintConfigurationSummary(config); 488 PrintConfigurationSummary(config);
489 489
490 webrtc::VP8Encoder* encoder = webrtc::VP8Encoder::Create(); 490 webrtc::VP8Encoder* encoder = webrtc::VP8Encoder::Create();
491 webrtc::VP8Decoder* decoder = webrtc::VP8Decoder::Create(); 491 webrtc::VP8Decoder* decoder = webrtc::VP8Decoder::Create();
492 webrtc::test::Stats stats; 492 webrtc::test::Stats stats;
493 webrtc::test::FrameReaderImpl frame_reader(config.input_filename, 493 webrtc::test::YuvFrameReaderImpl frame_reader(config.input_filename,
494 config.codec_settings->width, 494 config.codec_settings->width,
495 config.codec_settings->height); 495 config.codec_settings->height);
496 webrtc::test::FrameWriterImpl frame_writer(config.output_filename, 496 webrtc::test::YuvFrameWriterImpl frame_writer(config.output_filename,
497 config.frame_length_in_bytes); 497 config.codec_settings->width,
498 config.codec_settings->height);
498 frame_reader.Init(); 499 frame_reader.Init();
499 frame_writer.Init(); 500 frame_writer.Init();
500 webrtc::test::PacketReader packet_reader; 501 webrtc::test::PacketReader packet_reader;
501 502
502 webrtc::test::PacketManipulatorImpl packet_manipulator( 503 webrtc::test::PacketManipulatorImpl packet_manipulator(
503 &packet_reader, config.networking_config, config.verbose); 504 &packet_reader, config.networking_config, config.verbose);
504 // By default the packet manipulator is seeded with a fixed random. 505 // By default the packet manipulator is seeded with a fixed random.
505 // If disabled we must generate a new seed. 506 // If disabled we must generate a new seed.
506 if (FLAGS_disable_fixed_random_seed) { 507 if (FLAGS_disable_fixed_random_seed) {
507 packet_manipulator.InitializeRandomSeed(time(NULL)); 508 packet_manipulator.InitializeRandomSeed(time(NULL));
508 } 509 }
509 webrtc::test::VideoProcessor* processor = 510 webrtc::test::VideoProcessor* processor =
510 new webrtc::test::VideoProcessorImpl(encoder, decoder, &frame_reader, 511 new webrtc::test::VideoProcessorImpl(
511 &frame_writer, &packet_manipulator, 512 encoder, decoder, &frame_reader, &frame_writer, &packet_manipulator,
512 config, &stats); 513 config, &stats, nullptr /* source_frame_writer */,
514 nullptr /* encoded_frame_writer */,
515 nullptr /* decoded_frame_writer */);
513 processor->Init(); 516 processor->Init();
514 517
515 int frame_number = 0; 518 int frame_number = 0;
516 while (processor->ProcessFrame(frame_number)) { 519 while (processor->ProcessFrame(frame_number)) {
517 if (frame_number % 80 == 0) { 520 if (frame_number % 80 == 0) {
518 Log("\n"); // make the output a bit nicer. 521 Log("\n"); // make the output a bit nicer.
519 } 522 }
520 Log("."); 523 Log(".");
521 frame_number++; 524 frame_number++;
522 } 525 }
(...skipping 23 matching lines...) Expand all
546 } 549 }
547 if (FLAGS_python) { 550 if (FLAGS_python) {
548 PrintPythonOutput(config, stats, ssim_result, psnr_result); 551 PrintPythonOutput(config, stats, ssim_result, psnr_result);
549 } 552 }
550 delete processor; 553 delete processor;
551 delete encoder; 554 delete encoder;
552 delete decoder; 555 delete decoder;
553 Log("Quality test finished!"); 556 Log("Quality test finished!");
554 return 0; 557 return 0;
555 } 558 }
OLDNEW
« no previous file with comments | « webrtc/modules/video_coding/codecs/test/videoprocessor_unittest.cc ('k') | webrtc/test/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698