<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dcpomatic/src/lib/audio_analysis.cc, 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>Bump libdcp for raw_convert changes.</title>
<updated>2025-01-05T11:58:13Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2024-12-30T14:43:14Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=b03f2277a205ff7e7cdaa12c6e52322ea474a7af'/>
<id>urn:sha1:b03f2277a205ff7e7cdaa12c6e52322ea474a7af</id>
<content type='text'>
raw_convert&lt;string&gt; is gone, so here we use fmt::{to_string,format} instead.
Other raw_converts now use fast_float.
</content>
</entry>
<entry>
<title>Remove all use of add_child() from xmlpp.</title>
<updated>2024-03-20T17:25:09Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2024-02-06T09:58:39Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=0e5013e1a96af81e4b501ff0c3192c10a061a2c8'/>
<id>urn:sha1:0e5013e1a96af81e4b501ff0c3192c10a061a2c8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Normalise XML attribute names to be camelCase (#2241).</title>
<updated>2024-01-28T01:01:22Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2022-09-10T22:10:22Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=591c89275bfa26c3b2e1b0f1926909fc4bf5b219'/>
<id>urn:sha1:591c89275bfa26c3b2e1b0f1926909fc4bf5b219</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use dcp::filesystem to wrap filesystem calls and fix_long_path</title>
<updated>2023-10-09T21:38:28Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2023-10-06T00:37:16Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=96f50dd5e600925488fdd9db1580aa01b026269b'/>
<id>urn:sha1:96f50dd5e600925488fdd9db1580aa01b026269b</id>
<content type='text'>
anything that is passed to read_file() from libcxml.

This should fix #2623 and other similar problems.
</content>
</entry>
<entry>
<title>Add video_{range,frame_type}.{cc,h} and remove some types.h includes.</title>
<updated>2022-12-13T00:11:42Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2022-12-13T00:04:07Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=94d5ba335224db075a95a76654f732ef54a4eabd'/>
<id>urn:sha1:94d5ba335224db075a95a76654f732ef54a4eabd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use libdcp's warnings.h</title>
<updated>2022-04-22T21:27:15Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2022-04-22T21:27:15Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=3c29aa6531a4046a8db72dcac81189eb8893233c'/>
<id>urn:sha1:3c29aa6531a4046a8db72dcac81189eb8893233c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Assorted C++11/formatting cleanups.</title>
<updated>2021-04-08T19:32:44Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2021-04-08T19:32:44Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=3339d3bce70afe9ae2ca10e9fcfc4b54b748fbf4'/>
<id>urn:sha1:3339d3bce70afe9ae2ca10e9fcfc4b54b748fbf4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>BOOST_FOREACH.</title>
<updated>2021-01-07T22:27:56Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2021-01-04T20:32:13Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=a5d004b0773f633401528392fc28e66d70e13ac8'/>
<id>urn:sha1:a5d004b0773f633401528392fc28e66d70e13ac8</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>
</feed>
