X-Git-Url: https://git.carlh.net/gitweb/?p=dcpomatic.git;a=blobdiff_plain;f=src%2Flib%2Fframe_rate_change.h;h=c28342e92974214aeaebfca5d47186854fc25868;hp=05660ce826f07edfc1cada2eb5ca56a06ad731b2;hb=182b9d2e2feb6545592868606aaf0f0146095481;hpb=f67bc45820b4e56f90eecb97ba3b7762c119f9b5 diff --git a/src/lib/frame_rate_change.h b/src/lib/frame_rate_change.h index 05660ce82..c28342e92 100644 --- a/src/lib/frame_rate_change.h +++ b/src/lib/frame_rate_change.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2012-2015 Carl Hetherington + Copyright (C) 2012-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,21 +18,26 @@ */ + #ifndef DCPOMATIC_FRAME_RATE_CHANGE_H #define DCPOMATIC_FRAME_RATE_CHANGE_H -#include + +#include #include + class Film; class Content; + class FrameRateChange { public: + FrameRateChange (); FrameRateChange (double, int); - FrameRateChange (boost::shared_ptr film, boost::shared_ptr content); - FrameRateChange (boost::shared_ptr film, Content const * content); + FrameRateChange (std::shared_ptr film, std::shared_ptr content); + FrameRateChange (std::shared_ptr film, Content const * content); /** @return factor by which to multiply a source frame rate to get the effective rate after any skip or repeat has happened. @@ -45,13 +50,13 @@ public: return repeat; } - double source; - int dcp; + double source = 24; + int dcp = 24; /** true to skip every other frame */ - bool skip; + bool skip = false; /** number of times to use each frame (e.g. 1 is normal, 2 means repeat each frame once, and so on) */ - int repeat; + int repeat = 1; /** true if this DCP will run its video faster or slower than the source * without taking into account `repeat' nor `skip'. * (e.g. change_speed will be true if @@ -61,17 +66,15 @@ public: * source is 15.00fps, DCP is 30fps * source is 12.50fps, DCP is 25fps) */ - bool change_speed; + bool change_speed = false; /** Amount by which the video is being sped-up in the DCP; e.g. for a * 24fps source in a 25fps DCP this would be 25/24. */ - double speed_up; + double speed_up = 1.0; std::string description () const; - -private: - void construct (double source_, int dcp_); }; + #endif