+ void set_video_frame_type (VideoFrameType);
+
+ void set_left_crop (int);
+ void set_right_crop (int);
+ void set_top_crop (int);
+ void set_bottom_crop (int);
+
+ void set_colour_conversion (ColourConversion);
+
+ VideoFrameType video_frame_type () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _video_frame_type;
+ }
+
+ Crop crop () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _crop;
+ }
+
+ int left_crop () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _crop.left;
+ }
+
+ int right_crop () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _crop.right;
+ }
+
+ int top_crop () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _crop.top;
+ }
+
+ int bottom_crop () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _crop.bottom;
+ }
+
+ void set_ratio (Ratio const *);
+
+ /** @return ratio to scale to, or 0 if the content's own ratio should be preserved. */
+ Ratio const * ratio () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _ratio;
+ }
+
+ ColourConversion colour_conversion () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _colour_conversion;
+ }
+
+ libdcp::Size video_size_after_3d_split () const;
+ libdcp::Size video_size_after_crop () const;
+
+ VideoContent::Frame time_to_content_video_frames (DCPTime) const;
+