Merge master.
[dcpomatic.git] / src / lib / dcp_video.cc
index d849866512d4cdc0e983ca42201631fe3fe88d70..f6c671fd14774b655acb67708b75084c6a49eaf8 100644 (file)
@@ -125,7 +125,7 @@ DCPVideo::encode_locally ()
        }
 
        shared_ptr<dcp::XYZFrame> xyz = dcp::rgb_to_xyz (
-               _frame->image (_burn_subtitles),
+               _frame->image (AV_PIX_FMT_RGB48LE, _burn_subtitles),
                in_lut,
                dcp::GammaLUT::cache.get (16, 1 / _frame->colour_conversion().output_gamma, false),
                matrix
@@ -315,3 +315,18 @@ DCPVideo::eyes () const
        return _frame->eyes ();
 }
 
+/** @return true if this DCPVideo is definitely the same as another;
+ *  (apart from the frame index), false if it is probably not.
+ */
+bool
+DCPVideo::same (shared_ptr<const DCPVideo> other) const
+{
+       if (_frames_per_second != other->_frames_per_second ||
+           _j2k_bandwidth != other->_j2k_bandwidth ||
+           _resolution != other->_resolution ||
+           _burn_subtitles != other->_burn_subtitles) {
+               return false;
+       }
+
+       return _frame->same (other->_frame);
+}