From 404d66d4efacf558e57a132eaa24137b22c167dc Mon Sep 17 00:00:00 2001 From: Alexey Spizhevoy Date: Mon, 19 Mar 2012 13:57:38 +0000 Subject: [PATCH] Added missed file --- modules/videostab/src/frame_source.cpp | 32 ++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 modules/videostab/src/frame_source.cpp diff --git a/modules/videostab/src/frame_source.cpp b/modules/videostab/src/frame_source.cpp new file mode 100644 index 0000000000..eb9fd70fb3 --- /dev/null +++ b/modules/videostab/src/frame_source.cpp @@ -0,0 +1,32 @@ +#include "precomp.hpp" +#include "opencv2/videostab/frame_source.hpp" + +using namespace std; + +namespace cv +{ +namespace videostab +{ + +VideoFileSource::VideoFileSource(const string &path, bool volatileFrame) + : path_(path), volatileFrame_(volatileFrame) { reset(); } + + +void VideoFileSource::reset() +{ + reader_.release(); + reader_.open(path_); + if (!reader_.isOpened()) + throw runtime_error("can't open file: " + path_); +} + + +Mat VideoFileSource::nextFrame() +{ + Mat frame; + reader_ >> frame; + return volatileFrame_ ? frame : frame.clone(); +} + +} // namespace videostab +} // namespace cv