<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dcpomatic/src/lib/content_video.h, branch prores-debug</title>
<subtitle>DCP-o-matic DCP tools</subtitle>
<id>https://git.carlh.net/cgit/dcpomatic/atom?h=prores-debug</id>
<link rel='self' href='https://git.carlh.net/cgit/dcpomatic/atom?h=prores-debug'/>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/'/>
<updated>2022-10-19T12:44:01Z</updated>
<entry>
<title>Change how video timing is done.</title>
<updated>2022-10-19T12:44:01Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2022-09-29T08:17:50Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=f2e3522a9dcf7bd0a7a1f1073e45b4450e3b68f0'/>
<id>urn:sha1:f2e3522a9dcf7bd0a7a1f1073e45b4450e3b68f0</id>
<content type='text'>
This commit changes the approach with video timing.  Previously,
we would (more-or-less) try to use every video frame from the content
in the output, hoping that they come at a constant frame rate.

This is not always the case, however.  Here we preserve the PTS
of video frames, and then when one arrives we output whatever
DCP video frames we can (at the regular DCP frame rate).

Hopefully this will solve a range of sync problems, but it
could also introduce new ones.
</content>
</entry>
<entry>
<title>More enum class additions.</title>
<updated>2021-01-31T02:14:24Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2021-01-31T02:14:24Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=8fedaaa75c4586a4cc7ffb393bd71d1fdb091dc8'/>
<id>urn:sha1:8fedaaa75c4586a4cc7ffb393bd71d1fdb091dc8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>std::shared_ptr</title>
<updated>2021-01-07T21:48:29Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2021-01-04T20:16:53Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=dd9be86db6cde0afa5da0d1d1ac43b42e05dca26'/>
<id>urn:sha1:dd9be86db6cde0afa5da0d1d1ac43b42e05dca26</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add a 2-frame `delay' on content arriving at the player to give</title>
<updated>2018-02-20T23:37:24Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-02-20T23:34:59Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=a0eff2446835a2a29d751a4810fe182c486a2eb6'/>
<id>urn:sha1:a0eff2446835a2a29d751a4810fe182c486a2eb6</id>
<content type='text'>
subtitle content the chance to catch up.  Fixes problems observed
when overlaying a DCP subtitle onto an existing DCP and then seeking
into the first subtitle.  After the seek the decoder positions were:

DCP: 0.
subtitle: first subtitle time.

This causes the DCP decoder to be pass()ed first and so the subtitle
for the video frame has not arrived yet.

I hope this does not cause unpredicted side effects...
</content>
</entry>
<entry>
<title>Fix some cppcheck warnings.</title>
<updated>2017-04-30T00:32:43Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2017-04-30T00:32:43Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=ccb67af328f99e55dd9e3a6c01f2128f59016b4a'/>
<id>urn:sha1:ccb67af328f99e55dd9e3a6c01f2128f59016b4a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove unnecessary VideoFrame class.</title>
<updated>2017-04-19T22:04:32Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2017-02-21T23:50:30Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=130577d2e4e67de15ac8f5d6447729736d4bcac6'/>
<id>urn:sha1:130577d2e4e67de15ac8f5d6447729736d4bcac6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add VideoFrame class.</title>
<updated>2016-06-14T10:48:37Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-06-14T10:48:37Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=4b7b0edb359ae68f2dbcab90c7c10382f507fa5b'/>
<id>urn:sha1:4b7b0edb359ae68f2dbcab90c7c10382f507fa5b</id>
<content type='text'>
This puts a frame index with an Eyes, which simplifies code in
some areas.  I can't think of a better name for it,
unfortunately.
</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>No-op: remove all trailing whitespace.</title>
<updated>2015-06-21T00:15:32Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2015-06-21T00:15:32Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=e60bb3e51bd1508b149e6b8f6608f09b5196ae26'/>
<id>urn:sha1:e60bb3e51bd1508b149e6b8f6608f09b5196ae26</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix some uninitialised variables.</title>
<updated>2015-05-27T09:21:46Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2015-05-27T09:21:46Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=0a20f4b0ee59f06732648f981fe4d3e387b5705a'/>
<id>urn:sha1:0a20f4b0ee59f06732648f981fe4d3e387b5705a</id>
<content type='text'>
</content>
</entry>
</feed>
