/*
- Copyright (C) 2013-2015 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2013-2019 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
}
#include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp>
+#include <boost/thread/mutex.hpp>
class Image;
class ImageProxy;
+class Film;
class Socket;
/** Everything needed to describe a video frame coming out of the player, but with the
Eyes,
Part,
boost::optional<ColourConversion>,
+ VideoRange video_range,
boost::weak_ptr<Content>,
boost::optional<Frame>
);
void add_metadata (xmlpp::Node* node) const;
void send_binary (boost::shared_ptr<Socket> socket) const;
- bool reset_metadata (dcp::Size video_container_size, dcp::Size film_frame_size);
+ bool reset_metadata (boost::shared_ptr<const Film> film, dcp::Size video_container_size, dcp::Size film_frame_size);
bool has_j2k () const;
dcp::Data j2k () const;
Eyes _eyes;
Part _part;
boost::optional<ColourConversion> _colour_conversion;
+ VideoRange _video_range;
boost::optional<PositionImage> _text;
/** Content that we came from. This is so that reset_metadata() can work, and also
* for variant:swaroop's non-skippable ads.
mutable boost::mutex _mutex;
mutable boost::shared_ptr<Image> _image;
+ /** _crop that was used to make _image */
+ mutable Crop _image_crop;
+ /** _inter_size that was used to make _image */
+ mutable dcp::Size _image_inter_size;
+ /** _out_size that was used to make _image */
+ mutable dcp::Size _image_out_size;
+ /** _fade that was used to make _image */
+ mutable boost::optional<double> _image_fade;
};
#endif