<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dcpomatic/test, branch arbitrary-hz</title>
<subtitle>DCP-o-matic DCP tools</subtitle>
<id>https://git.carlh.net/cgit/dcpomatic/atom?h=arbitrary-hz</id>
<link rel='self' href='https://git.carlh.net/cgit/dcpomatic/atom?h=arbitrary-hz'/>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/'/>
<updated>2025-09-02T20:40:13Z</updated>
<entry>
<title>Untested conversion to num/den DCPTime.</title>
<updated>2025-09-02T20:40:13Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2024-12-21T23:09:57Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=33b0928b20618da5bc295711bfdf3d638863afa5'/>
<id>urn:sha1:33b0928b20618da5bc295711bfdf3d638863afa5</id>
<content type='text'>
Summary of required changes:

Replace ::from_frames with a constructor that takes num/den.
Provide and use member to_debug_string() instead of to_string().
Provide and use member to_serializable_string() and string constructor instead of fmt::to_string on .get() and number constructor.
Provide and use content_time() member instead of ContentTime constructor from DCPTime.
Use frames_round(96000) instead of get() when comparing times to see if they are "close enough".
Provide and use DCPTime(x, FrameRateChange) constructor when converting from ContentTime.
Use .seconds() when calculating proportions or sometimes when dividing by HZ.
Provide and use operator bool().
Pass explicit 96000 denominator in a lot of places.
Add member max() and use it instead of static max()
Change BOOST_CHECK_EQUAL to BOOST_CHECK
Provide operator/ and use it instead of .get() / 2.
</content>
</entry>
<entry>
<title>Add cover sheet magic strings for marker positions (#3076).</title>
<updated>2025-08-25T09:22:27Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2025-08-22T21:50:28Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=6ea9b75c5fc4736f19a424796a3d2c7550fb16dc'/>
<id>urn:sha1:6ea9b75c5fc4736f19a424796a3d2c7550fb16dc</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use 0-padded numbers for all fields of a timecode.</title>
<updated>2025-08-25T09:22:27Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2025-08-22T21:37:39Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=3b9402e620a83d8d23d9df334c4c40fa091c0b6f'/>
<id>urn:sha1:3b9402e620a83d8d23d9df334c4c40fa091c0b6f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>White space: util_test.cc.</title>
<updated>2025-08-25T06:47:42Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2025-08-22T20:18:16Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=f6ff08b405cf0adbe548a52851761183658a419d'/>
<id>urn:sha1:f6ff08b405cf0adbe548a52851761183658a419d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>New/improved pixel format decision when converting to XYZ.</title>
<updated>2025-08-12T15:16:07Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2025-07-21T22:48:42Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=98a8023dd774fd82c144a68039e0ea3131fb9142'/>
<id>urn:sha1:98a8023dd774fd82c144a68039e0ea3131fb9142</id>
<content type='text'>
For a long time we would keep XYZ12LE, if that's what we have, otherwise
ask FFmpeg to switch to RGB48LE.

Then in 1d5c211dadb9a9dc2318adce86ca9c31b367cabe I tried to fix the case
of an XYZ source mis-tagged as YUV.  I changed things so that with no
colour conversion we'd always ask FFmpeg to convert to XYZ.  This meant
that RGB sources with no colour conversion would get treatment by FFmpeg
due to the RGB -&gt; XYZ switch.

Here we're going back to the more-or-less the "long time" behaviour when
there is a conversion (keep XYZ12LE but otherwise convert to RGB48).

When there's no conversion, keep RGB (to avoid the FFmpeg conversion
from RGB -&gt; XYZ) but convert everything else to XYZ.
</content>
</entry>
<entry>
<title>Replace AVPixelFormat parameter to PlayerVideo::image with a functor.</title>
<updated>2025-08-12T15:16:07Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2025-07-21T22:18:32Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=9b73c143ce568bd8694e3a50f2fefc1ee3a03515'/>
<id>urn:sha1:9b73c143ce568bd8694e3a50f2fefc1ee3a03515</id>
<content type='text'>
This was removed in df9b4676aba8b941f124b174393988cad21677e1 and
surrounding commits, but it turns out we need it after all.
</content>
</entry>
<entry>
<title>Change Film::examine_and_add_content to take a vector of content.</title>
<updated>2025-07-15T16:03:57Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2025-07-15T01:36:59Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=21415bdb69a99c4fc36cf4b5e5160a171bb1cad4'/>
<id>urn:sha1:21415bdb69a99c4fc36cf4b5e5160a171bb1cad4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Change Film::add_content to take a vector of content.</title>
<updated>2025-07-15T16:03:57Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2025-07-15T00:47:35Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=0cfe03ee13d7659901211345e30ed78fe55e21ea'/>
<id>urn:sha1:0cfe03ee13d7659901211345e30ed78fe55e21ea</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Don't process unnecessary video frame rate changes.</title>
<updated>2025-07-15T16:02:50Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2025-07-15T00:20:36Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=de77e42f106342e1668e8948e28d6974ef44b61c'/>
<id>urn:sha1:de77e42f106342e1668e8948e28d6974ef44b61c</id>
<content type='text'>
This inadvertently fixes a bug where multiple pieces of caption content
would be added to the project sequentially, but then immediately
re-arranged to be at the same time.
</content>
</entry>
<entry>
<title>Change ExamineContentJob to take a vector of content.</title>
<updated>2025-07-15T09:10:47Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2025-07-15T00:19:35Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=847daf7ec0f741eb6d50638c2096743ee731634c'/>
<id>urn:sha1:847daf7ec0f741eb6d50638c2096743ee731634c</id>
<content type='text'>
</content>
</entry>
</feed>
