summaryrefslogtreecommitdiff
path: root/src/lib/video_decoder.h
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2016-05-10 14:29:14 +0100
committerCarl Hetherington <cth@carlh.net>2016-05-18 11:50:29 +0100
commit504c63b3d62038bc486ca8a09e77fbb403907edd (patch)
treed9118c185110dd9eb103ed033700d4b3f486785d /src/lib/video_decoder.h
parent9423e02c37daba7f9e406929a1cfc1bb10fb4b62 (diff)
Basics of splitting up Decoder tree like Content.
Diffstat (limited to 'src/lib/video_decoder.h')
-rw-r--r--src/lib/video_decoder.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/lib/video_decoder.h b/src/lib/video_decoder.h
index 669a5ef1e..c14a877f2 100644
--- a/src/lib/video_decoder.h
+++ b/src/lib/video_decoder.h
@@ -39,20 +39,22 @@ class Log;
/** @class VideoDecoder
* @brief Parent for classes which decode video.
*/
-class VideoDecoder : public virtual Decoder
+class VideoDecoder
{
public:
- VideoDecoder (boost::shared_ptr<const Content> c, boost::shared_ptr<Log> log);
+ VideoDecoder (Decoder* parent, boost::shared_ptr<const Content> c, boost::shared_ptr<Log> log);
std::list<ContentVideo> get_video (Frame frame, bool accurate);
void set_ignore_video ();
+ bool ignore_video () const {
+ return _ignore_video;
+ }
#ifdef DCPOMATIC_DEBUG
int test_gaps;
#endif
-protected:
friend struct video_decoder_fill_test1;
friend struct video_decoder_fill_test2;
friend struct ffmpeg_pts_offset_test;
@@ -60,10 +62,14 @@ protected:
void seek (ContentTime time, bool accurate);
void video (boost::shared_ptr<const ImageProxy>, Frame frame);
+
+private:
+
std::list<ContentVideo> decoded_video (Frame frame);
void fill_one_eye (Frame from, Frame to, Eyes);
void fill_both_eyes (Frame from, Frame to, Eyes);
+ Decoder* _parent;
boost::shared_ptr<const Content> _video_content;
boost::shared_ptr<Log> _log;
std::list<ContentVideo> _decoded_video;