summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2014-07-22 11:27:55 +0100
committerCarl Hetherington <cth@carlh.net>2014-07-22 11:27:55 +0100
commit9adf0dc99f0da3d45950a693193b9123d025b668 (patch)
tree99eea55571a76030844763cd0499273d1b539d93 /src/lib
parentac35bf2a80c9afae9dc5fcb0261929053162f44d (diff)
Write subtitle intrinsic durations to match the picture in the reel; sort out test fiasco after making libdcp compare DCPs properly again.
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/transcoder.cc3
-rw-r--r--src/lib/writer.cc2
2 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/transcoder.cc b/src/lib/transcoder.cc
index 1012c4544..9d8eebe25 100644
--- a/src/lib/transcoder.cc
+++ b/src/lib/transcoder.cc
@@ -62,7 +62,8 @@ Transcoder::go ()
_encoder->begin ();
DCPTime const frame = DCPTime::from_frames (1, _film->video_frame_rate ());
- for (DCPTime t; t < _film->length(); t += frame) {
+ DCPTime const length = _film->length ();
+ for (DCPTime t; t < length; t += frame) {
list<shared_ptr<PlayerVideo> > v = _player->get_video (t, true);
for (list<shared_ptr<PlayerVideo> >::const_iterator i = v.begin(); i != v.end(); ++i) {
_encoder->enqueue (*i);
diff --git a/src/lib/writer.cc b/src/lib/writer.cc
index c34a6a66d..c594a6446 100644
--- a/src/lib/writer.cc
+++ b/src/lib/writer.cc
@@ -466,7 +466,7 @@ Writer::finish ()
new dcp::ReelSubtitleAsset (
_subtitle_content,
dcp::Fraction (_film->video_frame_rate(), 1),
- _subtitle_content->latest_subtitle_out().to_seconds() * _film->video_frame_rate(),
+ _picture_mxf->intrinsic_duration (),
0
)
));