26 #ifndef __BIASVIDEOSOURCE_DISK_HH__
27 #define __BIASVIDEOSOURCE_DISK_HH__
31 #include <VideoSource/VideoSource_Base.hh>
32 #ifdef BIAS_HAVE_FFMPEG
33 # include <VideoSource/VideoSource_FFmpeg.hh>
36 #include "Base/Debug/TimeMeasure.hh"
62 virtual int OpenDevice(std::string Prefix, std::string Postfix,
int DigitCount,
63 int PictureCount,
int StartCount=0);
67 virtual int OpenDevice(
const std::vector<std::string> &FileNames);
81 #ifdef BUILD_IMAGE_USHORT
90 if (ActiveFrame_ <FileNames_.size())
return FileNames_[ActiveFrame_];
93 return ActiveFrame_ >0 ? FileNames_[ActiveFrame_-1] :
"" ;};
97 unsigned int GetNumFramesRemaining()
const;
107 FileNames_.reserve(FileNames_.size()+FileNames.size());
108 for (
unsigned int i=0; i<FileNames.size(); i++){
109 FileNames_.push_back(FileNames[i]);
141 #ifdef BIAS_HAVE_FFMPEG
EColorModel
These are the most often used color models.
void SetUseMetaData(const bool b)
If set to 'true' ParseMetaData will be called after load-image.
void SetLoopMode(bool l=true)
Defines a common interface to different devices.
Simple video decoding of video files using FFmpeg library.
unsigned int ActiveFrame_
void SetFrameCounterAsTimeStamp(const bool b)
unsigned int GetActiveFrameNumber() const
zero based counting, returns next frame
void SetReverseMode(bool r=true)
void AddFilenames(const std::vector< std::string > &FileNames)
pushback new filenames on internal filename vector
bool FrameCounterAsTimeStamp_
std::string GetNextFilename() const
std::vector< std::string > & GetFilenamesRef()
std::string GetLastFilename() const
std::vector< std::string > FileNames_
void SetActiveFrameNumber(unsigned int frame)
void SetGenerateNewUIDs(bool s)
This is the base class for images in BIAS.
class TimeMeasure contains functions for timing real time and cpu time.
int PostGrab()
Stop anything started in PreGrab()
This class simulates a video device by loading images from disk.