blob: 193ad480f4fd70fd38aefe2f8402e46895ce526c [file] [log] [blame]
andresp@webrtc.org28631e72013-09-19 12:14:03 +00001/*
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
3 *
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
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10#ifndef WEBRTC_COMMON_VIDEO_TEST_FRAME_GENERATOR_H_
11#define WEBRTC_COMMON_VIDEO_TEST_FRAME_GENERATOR_H_
12
13#include "webrtc/common_video/interface/i420_video_frame.h"
14#include "webrtc/typedefs.h"
15
16namespace webrtc {
17namespace test {
18
19class FrameGenerator {
20 public:
21 FrameGenerator() {}
22 virtual ~FrameGenerator() {}
23
24 // Returns video frame that remains valid until next call.
25 virtual I420VideoFrame& NextFrame() = 0;
26
27 static FrameGenerator* CreateFromYuvFile(const char* file,
28 size_t width,
29 size_t height);
30};
31} // namespace test
32} // namespace webrtc
33
34#endif // WEBRTC_COMMON_VIDEO_TEST_FRAME_GENERATOR_H_