<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dcpomatic/src/lib/subtitle_decoder.h, branch v2.10.4</title>
<subtitle>DCP-o-matic DCP tools</subtitle>
<id>https://git.carlh.net/cgit/dcpomatic/atom?h=v2.10.4</id>
<link rel='self' href='https://git.carlh.net/cgit/dcpomatic/atom?h=v2.10.4'/>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/'/>
<updated>2016-10-07T23:45:22Z</updated>
<entry>
<title>Fix overlapping burnt-in subtitles in some cases (#959).</title>
<updated>2016-10-07T23:45:22Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-10-07T23:45:22Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=37494990bbe81f41f581de8258dc7353b82d662d'/>
<id>urn:sha1:37494990bbe81f41f581de8258dc7353b82d662d</id>
<content type='text'>
Firstly, when finding subtitles that exist during a period, only
return those which overlap more than half the period.  This means
that, in a fight over a frame, the longest-running subtitle in that
frame will win.

Secondly, make SubtitleDecoder::get pick the wanted subtitles from
the cache simply by comparing their periods to those that were
requested.  I think this is nicer than what was there before
(basically reevaulating 'what subtitle(s) for this period') and
also makes the first part of this commit effective.
</content>
</entry>
<entry>
<title>Make the preview respond to changes in subtitle line spacing.</title>
<updated>2016-07-01T00:05:06Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-06-29T23:20:49Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=9b7e3d7d992f64da4bc78bc99d1eb706f181b798'/>
<id>urn:sha1:9b7e3d7d992f64da4bc78bc99d1eb706f181b798</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix some code duplication and crashes when decoding FFmpeg-embedded ASS subtitles along the way.</title>
<updated>2016-06-09T22:28:41Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-06-09T22:28:41Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=31a33018f113cb7b631dd7bb4d0ed2a7de914cd8'/>
<id>urn:sha1:31a33018f113cb7b631dd7bb4d0ed2a7de914cd8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>No-op; fix GPL address and use the explicit-program-name version.</title>
<updated>2016-05-25T19:56:58Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-05-25T19:56:58Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=3828baf56467224f5d44049bf1e7a7ed11f43a05'/>
<id>urn:sha1:3828baf56467224f5d44049bf1e7a7ed11f43a05</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rename some methods.</title>
<updated>2016-05-18T10:50:29Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-05-10T13:37:57Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=0758d834992f0adb8aa8d4d9908a64ce8708f05c'/>
<id>urn:sha1:0758d834992f0adb8aa8d4d9908a64ce8708f05c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Basics of splitting up Decoder tree like Content.</title>
<updated>2016-05-18T10:50:29Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-05-10T13:29:14Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=504c63b3d62038bc486ca8a09e77fbb403907edd'/>
<id>urn:sha1:504c63b3d62038bc486ca8a09e77fbb403907edd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add appearance dialog for SubRip subtitles.</title>
<updated>2015-11-08T15:00:58Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2015-11-08T15:00:58Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=3b932abd0c7634483911e1d5361e12b2d094ae6f'/>
<id>urn:sha1:3b932abd0c7634483911e1d5361e12b2d094ae6f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Reinstate subtitle speed-up patch 526fd6de4c80a7ac9614a1cb0209efff7b171cd5 but only for preview.</title>
<updated>2015-10-26T09:37:29Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2015-10-26T09:37:29Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=2e62b2c0de47fc8e5bcb5466b2876f9b23d2ae84'/>
<id>urn:sha1:2e62b2c0de47fc8e5bcb5466b2876f9b23d2ae84</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rest of src/lib/*.h tidying.</title>
<updated>2015-08-26T18:26:41Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2015-08-26T18:26:41Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=dd8a7d1bbb8f2afb1b98d2be856ff0a9920e180d'/>
<id>urn:sha1:dd8a7d1bbb8f2afb1b98d2be856ff0a9920e180d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix missing subtitles in some cases.</title>
<updated>2015-06-26T21:02:00Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2015-06-26T21:02:00Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=c8ff422a42eac30517a7acde57ab84e55449f4e4'/>
<id>urn:sha1:c8ff422a42eac30517a7acde57ab84e55449f4e4</id>
<content type='text'>
We were passing subtitles back from decoders to SubtitleDecoder
using dcp::SubtitleStrings and relying on their storage of time
to know when the subtitles were.  These times are quantised (by
the use of dcp::SubtitleString) and then compared with unquantised
times (kept as ContentTime) in the main checking loop in
SubtitleDecoder::get().

Fix this by storing periods as ContentTimePeriod as well as
in the dcp::SubtitleStrings.
</content>
</entry>
</feed>
