From 6708d52b5c2ff9ccb6ee99f3b793d791bb95f26b Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Thu, 15 Oct 2015 09:13:33 +0100 Subject: Fix invalid Interop subtitle times in some cases. Use a much higher "timecode rate" (1000 rather than 24) when representing the time of subtitles internally so that accuracy is preserved and we don't end up rounding things up to give out of range results. --- src/lib/dcp_decoder.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/lib/dcp_decoder.cc') diff --git a/src/lib/dcp_decoder.cc b/src/lib/dcp_decoder.cc index 1c3285d2d..21eb2f7ea 100644 --- a/src/lib/dcp_decoder.cc +++ b/src/lib/dcp_decoder.cc @@ -176,8 +176,8 @@ DCPDecoder::text_subtitles_during (ContentTimePeriod period, bool starting) cons int64_t const entry_point = r->main_subtitle()->entry_point (); list subs = r->main_subtitle()->subtitle_asset()->subtitles_during ( - dcp::Time (period.from.seconds ()) - dcp::Time (entry_point, vfr, vfr), - dcp::Time (period.to.seconds ()) - dcp::Time (entry_point, vfr, vfr), + dcp::Time (period.from.seconds(), 1000) - dcp::Time (entry_point, vfr, vfr), + dcp::Time (period.to.seconds(), 1000) - dcp::Time (entry_point, vfr, vfr), starting ); -- cgit v1.2.3