<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dcpomatic/src/lib/player.cc, branch master</title>
<subtitle>DCP-o-matic DCP tools</subtitle>
<id>https://git.carlh.net/cgit/dcpomatic/atom?h=master</id>
<link rel='self' href='https://git.carlh.net/cgit/dcpomatic/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/'/>
<updated>2020-02-16T20:25:49Z</updated>
<entry>
<title>Potential fix for #1568; we calculate the remaining DCPTime but</title>
<updated>2020-02-16T20:25:49Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2019-05-26T01:58:17Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=ac112cdc14b0f600ac1c2d4e24f8b19eea132f54'/>
<id>urn:sha1:ac112cdc14b0f600ac1c2d4e24f8b19eea132f54</id>
<content type='text'>
then convert it back to resampled content frames using the DCP
rate rather than the resampled content rate, which seems wrong.

If we want to go from metric time to frames we surely have to use
the frame rate of the thing we are working with (not the frame rate
which that thing will be played back at).

Backported from 26c62598730d1d32333bfab0d5f463b90d26ee4d in v2.15.x.
</content>
</entry>
<entry>
<title>Fix deadlock during content examination.</title>
<updated>2020-02-16T20:23:42Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2020-01-28T22:23:47Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=4b38c8f429407ec09609236fc7b2349459536571'/>
<id>urn:sha1:4b38c8f429407ec09609236fc7b2349459536571</id>
<content type='text'>
Before this fix, the following situation could happen in threads
A and B:

A: Some DONE signal happens; this triggers setup_pieces which
   takes a lock on the player mutex.

B: FFmpegContent::examine takes a lock on the content mutex.
B: FFmpegContent::examine adds a stream
B: That causes STREAMS PENDING to be emitted.
B: This tries to take a lock on the player mutex so it can update _suspended

A: setup_pieces tries to access some content information, hence
   tries to take a lock on the content mutex.

Now B is holding the CL and awaiting the PL and A is holding
the PL and awaiting the CL.

It feels like the root cause of this is that while setup_pieces
is happening another change (which would itself cause setup_pieces)
is announced, and this isn't dealt with properly.

There are two steps here; _suspended is protected with an atomic
rather than using _mutex, and also it can cope with being updated
recursively.

Backported from df48c75c38dd788835a93540aea243a2dac4bb10 in v2.15.x
</content>
</entry>
<entry>
<title>Fix crash with bitmapped subs that have zero width or height.</title>
<updated>2020-02-06T09:35:54Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2020-02-06T09:34:30Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=9482a41238c370e093c896145b844dac0b221345'/>
<id>urn:sha1:9482a41238c370e093c896145b844dac0b221345</id>
<content type='text'>
Back-ported from dec5ae11238495c64fffdab37f189d96aed7d636 in v2.15.x.
</content>
</entry>
<entry>
<title>Extend the amount of allowed disagreement between the audio</title>
<updated>2020-01-07T12:30:56Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2020-01-07T12:30:56Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=0e86a5da67451dfc6120406e5282fc786de6e248'/>
<id>urn:sha1:0e86a5da67451dfc6120406e5282fc786de6e248</id>
<content type='text'>
coming from the content and the calculated periods of silence.

It sees that there is some scope for disagreements here when
trim start/end times are rounded to frame boundaries.

Fixes #1708.
</content>
</entry>
<entry>
<title>Fix comment.</title>
<updated>2019-11-11T13:13:41Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2019-11-11T13:13:41Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=dc18bbe7fb73ceaa169ff27e56d00bf32b509519'/>
<id>urn:sha1:dc18bbe7fb73ceaa169ff27e56d00bf32b509519</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Increase fudge factor at the boundary between audio signal and silence.</title>
<updated>2019-11-11T13:12:33Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2019-11-01T10:25:20Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=b1f03ef090dd57d8d33b814184583865a92c1d48'/>
<id>urn:sha1:b1f03ef090dd57d8d33b814184583865a92c1d48</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add a warning log when an assertion gets hit.</title>
<updated>2019-09-19T22:28:24Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2019-09-19T22:11:25Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=730a0a42ae0a4428693c3b560044c777751939ce'/>
<id>urn:sha1:730a0a42ae0a4428693c3b560044c777751939ce</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix errors when adding reels containing audio after referenced reels (#1528).</title>
<updated>2019-04-17T15:52:02Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2019-04-17T15:52:02Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=5b68916d71fbaac6c84ffc37e98d4ad42d450961'/>
<id>urn:sha1:5b68916d71fbaac6c84ffc37e98d4ad42d450961</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Another attempt to fix build.</title>
<updated>2019-03-23T08:44:58Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2019-03-23T08:44:58Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=a95e78ea9d4c39f05fc8f7b58141a6a5bdc91ad6'/>
<id>urn:sha1:a95e78ea9d4c39f05fc8f7b58141a6a5bdc91ad6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Try to fix Windows build.</title>
<updated>2019-03-23T07:52:10Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2019-03-23T07:52:10Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=f0e9267d0839c1eb3e716f6e73a5f1b37d0bad12'/>
<id>urn:sha1:f0e9267d0839c1eb3e716f6e73a5f1b37d0bad12</id>
<content type='text'>
</content>
</entry>
</feed>
