From fd76b5fe8616cab2d1f0498c2a57333a0c930ed9 Mon Sep 17 00:00:00 2001 From: Artem Titov Date: Wed, 4 Dec 2019 23:06:35 +0100 Subject: [PATCH] Introduce factory method for IVF frame generator MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug: webrtc:10138 Change-Id: I9039aa289c935b7fcc2f3ab4ddec6413eb1302c4 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161324 Reviewed-by: Patrik Höglund Commit-Queue: Artem Titov Cr-Commit-Position: refs/heads/master@{#30011} --- api/BUILD.gn | 1 + api/test/create_frame_generator.cc | 7 +++++++ api/test/create_frame_generator.h | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/api/BUILD.gn b/api/BUILD.gn index 4265f97cd7..8bb6f06f58 100644 --- a/api/BUILD.gn +++ b/api/BUILD.gn @@ -459,6 +459,7 @@ if (rtc_include_tests) { ":frame_generator_api", "../system_wrappers", "../test:video_test_common", + "../test:video_test_support", "//third_party/abseil-cpp/absl/types:optional", ] } diff --git a/api/test/create_frame_generator.cc b/api/test/create_frame_generator.cc index b6e62a4d97..6b5b9fac77 100644 --- a/api/test/create_frame_generator.cc +++ b/api/test/create_frame_generator.cc @@ -13,6 +13,7 @@ #include #include "test/frame_generator.h" +#include "test/testsupport/ivf_video_frame_generator.h" namespace webrtc { namespace test { @@ -35,6 +36,12 @@ std::unique_ptr CreateFromYuvFileFrameGenerator( frame_repeat_count); } +// Creates a frame generator that repeatedly plays an ivf file. +std::unique_ptr CreateFromYuvFileFrameGenerator( + std::string file) { + return std::make_unique(std::move(file)); +} + std::unique_ptr CreateScrollingInputFromYuvFilesFrameGenerator( Clock* clock, diff --git a/api/test/create_frame_generator.h b/api/test/create_frame_generator.h index 692c964638..920ff862b0 100644 --- a/api/test/create_frame_generator.h +++ b/api/test/create_frame_generator.h @@ -41,6 +41,10 @@ std::unique_ptr CreateFromYuvFileFrameGenerator( size_t height, int frame_repeat_count); +// Creates a frame generator that repeatedly plays an ivf file. +std::unique_ptr CreateFromYuvFileFrameGenerator( + std::string file); + // Creates a frame generator which takes a set of yuv files (wrapping a // frame generator created by CreateFromYuvFile() above), but outputs frames // that have been cropped to specified resolution: source_width/source_height