X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Ftimecode.h;h=23469756bbb8f3f4daec0f8e623a63243100da1c;hb=3c844989ad9fdb96bb9258a990a9874773b3d792;hp=e17e4379e32bd15db7eda3560907a8d8bc22ba60;hpb=c5d8499c0d1a78fb969e9e20197428afc0c37ff4;p=kdenlive diff --git a/src/timecode.h b/src/timecode.h index e17e4379..23469756 100644 --- a/src/timecode.h +++ b/src/timecode.h @@ -17,7 +17,7 @@ #ifndef TIMECODE_H #define TIMECODE_H -#include +#include #include "gentime.h" @@ -31,16 +31,12 @@ class Timecode public: enum Formats { HH_MM_SS_FF, HH_MM_SS_HH, Frames, Seconds }; - explicit Timecode(Formats format = HH_MM_SS_FF, double framesPerSecond = - 25, bool dropFrame = false); + explicit Timecode(Formats format = HH_MM_SS_FF, double framesPerSecond = 25); - /** Set the current timecode format; this is the output format for this timecode. */ - void setFormat(double framesPerSecond, bool dropFrame = false, Formats format = HH_MM_SS_FF) { - m_displayedFramesPerSecond = (int)(framesPerSecond + 0.5); - m_dropFrame = dropFrame; - m_format = format; - m_realFps = framesPerSecond; - } + /** + * Set the current timecode format; this is the output format for this timecode. + */ + void setFormat(double framesPerSecond, Formats format = HH_MM_SS_FF); Formats format() const { return m_format; @@ -49,27 +45,35 @@ public: ~Timecode(); /** Returns the timecode for a given time */ + QString getDisplayTimecode(const GenTime & time, bool frameDisplay) const; QString getTimecode(const GenTime & time) const; - int getFrameCount(const QString duration) const; + int getDisplayFrameCount(const QString &duration, bool frameDisplay) const; + int getFrameCount(const QString &duration) const; static QString getEasyTimecode(const GenTime & time, const double &fps); - static QString getStringTimecode(int frames, const double &fps); + static QString getStringTimecode(int frames, const double &fps, bool showFrames = false); + const QString getDisplayTimecodeFromFrames(int frames, bool frameDisplay) const; const QString getTimecodeFromFrames(int frames) const; double fps() const; + bool df() const; + const QString mask(const GenTime &t = GenTime()) const; + QString reformatSeparators(QString duration) const; private: Formats m_format; - bool m_dropFrame; + bool m_dropFrameTimecode; int m_displayedFramesPerSecond; double m_realFps; + double m_dropFrames; + int m_framesPer10Minutes; const QString getTimecodeHH_MM_SS_FF(const GenTime & time) const; const QString getTimecodeHH_MM_SS_FF(int frames) const; - QString getTimecodeHH_MM_SS_HH(const GenTime & time) const; - QString getTimecodeFrames(const GenTime & time) const; - QString getTimecodeSeconds(const GenTime & time) const; - QString getTimecodeDropFrame(const GenTime & time) const; - QString getTimecodeDropFrame(int frames) const; + const QString getTimecodeHH_MM_SS_HH(const GenTime & time) const; + const QString getTimecodeFrames(const GenTime & time) const; + const QString getTimecodeSeconds(const GenTime & time) const; + const QString getTimecodeDropFrame(const GenTime & time) const; + const QString getTimecodeDropFrame(int framenumber) const; }; #endif