Go to the documentation of this file.
7 #ifndef FRAMEANALYZER_H
8 #define FRAMEANALYZER_H
23 #define LONG_LONG_MAX __LONG_LONG_MAX__
33 virtual const char *
name(
void)
const = 0;
49 [[maybe_unused]]
long long nframes)
61 long long frameno,
long long *pNextFrame ) = 0;
63 virtual int finished([[maybe_unused]]
long long nframes,
64 [[maybe_unused]]
bool final)
75 bool rrccinrect(
int rr,
int cc,
int rrow,
int rcol,
int rwidth,
int rheight);
78 float fps,
const char *comment);
81 float fps,
const char *comment);
89 float fps,
int minseglen,
bool verbose);
bool rrccinrect(int rr, int cc, int rrow, int rcol, int rwidth, int rheight)
bool removeShortBreaks(FrameAnalyzer::FrameMap *breakMap, float fps, int minbreaklen, bool verbose)
virtual enum analyzeFrameResult MythPlayerInited([[maybe_unused]] MythPlayer *player, [[maybe_unused]] long long nframes)
QMap< int, FrameList * > FrameMap
virtual const char * name(void) const =0
QMap< long long, long long > FrameMap
virtual int finished([[maybe_unused]] long long nframes, [[maybe_unused]] bool final)
static const long long kAnyFrame
virtual FrameMap GetMap(unsigned int) const =0
bool removeShortSegments(FrameAnalyzer::FrameMap *breakMap, long long nframes, float fps, int minseglen, bool verbose)
FrameAnalyzer::FrameMap::const_iterator frameMapSearchBackwards(const FrameAnalyzer::FrameMap *frameMap, long long markbegin, long long mark)
static const long long kNextFrame
virtual ~FrameAnalyzer(void)=default
long long frameAnalyzerMapSum(const FrameAnalyzer::FrameMap *frameMap)
void frameAnalyzerReportMap(const FrameAnalyzer::FrameMap *frameMap, float fps, const char *comment)
virtual int reportTime(void) const
FrameAnalyzer::FrameMap::const_iterator frameMapSearchForwards(const FrameAnalyzer::FrameMap *frameMap, long long mark, long long markend)
virtual enum analyzeFrameResult analyzeFrame(const MythVideoFrame *frame, long long frameno, long long *pNextFrame)=0
void frameAnalyzerReportMapms(const FrameAnalyzer::FrameMap *frameMap, float fps, const char *comment)