Enable video processing unittest to take video clips as param.

This change enables video processing unittest (including all tests under
it, e.g. denoiser test) to use a set of video clips as param, which is
important if we want to do a regression test on the visual quality
offline.

BUG=

Review URL: https://codereview.webrtc.org/1907353004

Cr-Commit-Position: refs/heads/master@{#12485}
This commit is contained in:
jackychen
2016-04-25 00:48:01 -07:00
committed by Commit bot
parent b1f1406e06
commit 6d94e5224a
6 changed files with 46 additions and 41 deletions

View File

@ -20,26 +20,27 @@
namespace webrtc {
class VideoProcessingTest : public ::testing::Test {
typedef struct {
std::string file_name;
int width;
int height;
} VideoToTest;
class VideoProcessingTest : public ::testing::TestWithParam<VideoToTest> {
protected:
VideoProcessingTest();
virtual void SetUp();
virtual void TearDown();
static void SetUpTestCase() {
Trace::CreateTrace();
std::string trace_file = webrtc::test::OutputPath() + "VPMTrace.txt";
ASSERT_EQ(0, Trace::SetTraceFile(trace_file.c_str()));
}
static void TearDownTestCase() { Trace::ReturnTrace(); }
VideoProcessing* vp_;
FILE* source_file_;
VideoFrame video_frame_;
const int width_;
const int half_width_;
const int height_;
const int size_y_;
const int size_uv_;
const size_t frame_length_;
VideoToTest vtt_;
int width_;
int half_width_;
int height_;
int size_y_;
int size_uv_;
size_t frame_length_;
};
} // namespace webrtc