X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fj2k_still_encoder.cc;h=dd6ef49b2a414fdf9c3567a06012aeb4f353ed8b;hb=88e187267df754a99dba3222a94e01362986f720;hp=d218d08fee0ec62ec4a2e54001a7f9448283b1dc;hpb=cb33319a820b17a05cfb2ef78ba1799f4d0c54b9;p=dcpomatic.git diff --git a/src/lib/j2k_still_encoder.cc b/src/lib/j2k_still_encoder.cc index d218d08fe..dd6ef49b2 100644 --- a/src/lib/j2k_still_encoder.cc +++ b/src/lib/j2k_still_encoder.cc @@ -30,31 +30,32 @@ #include #include "j2k_still_encoder.h" #include "config.h" -#include "film_state.h" #include "options.h" #include "exceptions.h" #include "dcp_video_frame.h" #include "filter.h" #include "log.h" #include "imagemagick_decoder.h" +#include "film.h" -using namespace std; -using namespace boost; +using std::string; +using std::pair; +using boost::shared_ptr; -J2KStillEncoder::J2KStillEncoder (shared_ptr s, shared_ptr o, Log* l) - : Encoder (s, o, l) +J2KStillEncoder::J2KStillEncoder (shared_ptr f, shared_ptr o) + : Encoder (f, o) { } void -J2KStillEncoder::process_video (shared_ptr yuv, int frame) +J2KStillEncoder::do_process_video (shared_ptr yuv, shared_ptr sub) { - pair const s = Filter::ffmpeg_strings (_fs->filters); + pair const s = Filter::ffmpeg_strings (_film->filters()); DCPVideoFrame* f = new DCPVideoFrame ( - yuv, _opt->out_size, _opt->padding, _fs->scaler, 0, _fs->frames_per_second, s.second, + yuv, sub, _opt->out_size, _opt->padding, _film->subtitle_offset(), _film->subtitle_scale(), _film->scaler(), 0, _film->frames_per_second(), s.second, Config::instance()->colour_lut_index(), Config::instance()->j2k_bandwidth(), - _log + _film->log() ); if (!boost::filesystem::exists (_opt->frame_out_path (0, false))) { @@ -63,7 +64,7 @@ J2KStillEncoder::process_video (shared_ptr yuv, int frame) } string const real = _opt->frame_out_path (0, false); - for (int i = 1; i < (_fs->still_duration * ImageMagickDecoder::static_frames_per_second()); ++i) { + for (int i = 1; i < (_film->still_duration() * 24); ++i) { if (!boost::filesystem::exists (_opt->frame_out_path (i, false))) { string const link = _opt->frame_out_path (i, false); #ifdef DVDOMATIC_POSIX @@ -73,9 +74,9 @@ J2KStillEncoder::process_video (shared_ptr yuv, int frame) } #endif #ifdef DVDOMATIC_WINDOWS - filesystem::copy_file (real, link); + boost::filesystem::copy_file (real, link); #endif } - frame_done (0); + frame_done (); } }