From 504c63b3d62038bc486ca8a09e77fbb403907edd Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Tue, 10 May 2016 14:29:14 +0100 Subject: Basics of splitting up Decoder tree like Content. --- src/lib/image_decoder.cc | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'src/lib/image_decoder.cc') diff --git a/src/lib/image_decoder.cc b/src/lib/image_decoder.cc index 6c46b9c08..71157dd5d 100644 --- a/src/lib/image_decoder.cc +++ b/src/lib/image_decoder.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2012-2013 Carl Hetherington + Copyright (C) 2012-2016 Carl Hetherington This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,16 +17,18 @@ */ -#include -#include -#include #include "image_content.h" #include "image_decoder.h" +#include "video_decoder.h" #include "image.h" #include "magick_image_proxy.h" #include "j2k_image_proxy.h" #include "film.h" #include "exceptions.h" +#include "video_content.h" +#include +#include +#include #include "i18n.h" @@ -35,11 +37,10 @@ using boost::shared_ptr; using dcp::Size; ImageDecoder::ImageDecoder (shared_ptr c, shared_ptr log) - : VideoDecoder (c, log) - , _image_content (c) + : _image_content (c) , _video_position (0) { - + video.reset (new VideoDecoder (this, c, log)); } bool @@ -62,7 +63,7 @@ ImageDecoder::pass (PassReason, bool) } } - video (_image, _video_position); + video->video (_image, _video_position); ++_video_position; return false; } @@ -70,6 +71,6 @@ ImageDecoder::pass (PassReason, bool) void ImageDecoder::seek (ContentTime time, bool accurate) { - VideoDecoder::seek (time, accurate); + video->seek (time, accurate); _video_position = time.frames_round (_image_content->active_video_frame_rate ()); } -- cgit v1.2.3