+ if (_parent->video_frame_rate()) {
+ double const vfr = _parent->video_frame_rate().get ();
+
+ snprintf (buffer, sizeof(buffer), _("\nContent frame rate %.4f\n"), vfr);
+ d += buffer;
+
+ FrameRateChange frc (vfr, film->video_frame_rate ());
+ d += frc.description ();
+ }
+
+ return d;
+}
+
+void
+VideoContent::add_properties (list<UserProperty>& p) const
+{
+ p.push_back (UserProperty (UserProperty::VIDEO, _("Length"), length (), _("video frames")));
+ p.push_back (UserProperty (UserProperty::VIDEO, _("Size"), String::compose ("%1x%2", size().width, size().height)));
+}
+
+void
+VideoContent::set_length (Frame len)
+{
+ maybe_set (_length, len, ContentProperty::LENGTH);
+}
+
+void
+VideoContent::set_left_crop (int c)
+{
+ maybe_set (_crop.left, c, VideoContentProperty::CROP);
+}
+
+void
+VideoContent::set_right_crop (int c)
+{
+ maybe_set (_crop.right, c, VideoContentProperty::CROP);
+}
+
+void
+VideoContent::set_top_crop (int c)
+{
+ maybe_set (_crop.top, c, VideoContentProperty::CROP);
+}
+
+void
+VideoContent::set_bottom_crop (int c)
+{
+ maybe_set (_crop.bottom, c, VideoContentProperty::CROP);
+}
+
+void
+VideoContent::set_scale (VideoContentScale s)
+{
+ maybe_set (_scale, s, VideoContentProperty::SCALE);
+}
+
+void
+VideoContent::set_frame_type (VideoFrameType t)
+{
+ maybe_set (_frame_type, t, VideoContentProperty::FRAME_TYPE);
+}
+
+void
+VideoContent::unset_colour_conversion ()
+{
+ maybe_set (_colour_conversion, boost::optional<ColourConversion> (), VideoContentProperty::COLOUR_CONVERSION);
+}