<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dcpomatic/src/lib/butler.cc, branch attic/analytics</title>
<subtitle>DCP-o-matic DCP tools</subtitle>
<id>https://git.carlh.net/cgit/dcpomatic/atom?h=attic%2Fanalytics</id>
<link rel='self' href='https://git.carlh.net/cgit/dcpomatic/atom?h=attic%2Fanalytics'/>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/'/>
<updated>2018-08-13T23:05:06Z</updated>
<entry>
<title>More fixes for errors / crashes / misbehaviour with content changes</title>
<updated>2018-08-13T23:05:06Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-08-13T16:37:52Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=1fe6bd7f8ba059322b8357b2210f0fd590567ce2'/>
<id>urn:sha1:1fe6bd7f8ba059322b8357b2210f0fd590567ce2</id>
<content type='text'>
and the butler.

Here we signal both before and after a change in content.  Before,
the player disables itself so that any pass()/seek() will be no-ops.
After, the player rebuilds its pieces and the butler re-seeks to
get back to where it was before the change.
</content>
</entry>
<entry>
<title>Don't seek during timeline drags.</title>
<updated>2018-08-12T21:02:25Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-08-12T21:02:25Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=b733ff51f0212d02dbf33ccb62e67f07941f5ace'/>
<id>urn:sha1:b733ff51f0212d02dbf33ccb62e67f07941f5ace</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove duplicated stuff from seek_unlocked(); tweak some ordering.</title>
<updated>2018-08-09T21:31:11Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-08-08T23:01:49Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=52094ba65baa38dfcedc907cfb4314efb1a549b4'/>
<id>urn:sha1:52094ba65baa38dfcedc907cfb4314efb1a549b4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Get closed caption view data from the butler, rather than the player.</title>
<updated>2018-08-05T00:15:45Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-08-05T00:15:45Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=3a7b6acdb993864f319a6ceb3bc4c3fb7d4aaefd'/>
<id>urn:sha1:3a7b6acdb993864f319a6ceb3bc4c3fb7d4aaefd</id>
<content type='text'>
You can't introduce the butler (so that the player is ahead of time)
and then ask the player what should be in the frame that is being
displayed "now"; the player will already have moved on.
</content>
</entry>
<entry>
<title>Remove unused parameter.</title>
<updated>2018-08-03T23:18:22Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-08-03T23:18:22Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=984455f1a072b0fa42879d03042e82df0a3cb3bd'/>
<id>urn:sha1:984455f1a072b0fa42879d03042e82df0a3cb3bd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Timestamp audio emissions from butler and hence discard very late</title>
<updated>2018-08-03T23:01:30Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-08-03T23:01:30Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=54e6f206305d4275808cfce36987edcc61a6a779'/>
<id>urn:sha1:54e6f206305d4275808cfce36987edcc61a6a779</id>
<content type='text'>
audio in FilmViewer.  This should help with the case where lots
of video frames are rapidly discarded when they are late but the
corresponding audio is not, hence audio buffers get overfilled.
</content>
</entry>
<entry>
<title>A variety of changes to improve (but not entirely fix) behaviour</title>
<updated>2018-08-02T22:22:49Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-08-02T22:22:49Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=4fe1a062eb31d680b8b4ac0191b9e2fc2d6aaec3'/>
<id>urn:sha1:4fe1a062eb31d680b8b4ac0191b9e2fc2d6aaec3</id>
<content type='text'>
when moving content (or otherwise changing the playlist) while playing.

This commit refills the butler when things change in certain ways,
and improves locking to cope with Player methods being called from
the GUI and butler threads at the same time.
</content>
</entry>
<entry>
<title>Remove debug code.</title>
<updated>2018-07-27T15:21:21Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-07-27T15:21:21Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=1e0425dc769a0a909d20de7af373bff3f38de8d2'/>
<id>urn:sha1:1e0425dc769a0a909d20de7af373bff3f38de8d2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Protect the public API of Player with a mutex, since</title>
<updated>2018-07-26T19:59:04Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-07-26T19:59:04Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=3009a585f5222a83213c786e3c564c740f450d18'/>
<id>urn:sha1:3009a585f5222a83213c786e3c564c740f450d18</id>
<content type='text'>
seek() and pass() may be called from the Butler thread
ad the same time as other Player methods are called from
the GUI thread (by FilmViewer and ClosedCaptionViewDialog).
</content>
</entry>
<entry>
<title>Add some timing logs for playback.</title>
<updated>2018-06-22T00:06:49Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-06-22T00:06:49Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=3f8e7d70bb81890246f9cea54cbc494b027dcc53'/>
<id>urn:sha1:3f8e7d70bb81890246f9cea54cbc494b027dcc53</id>
<content type='text'>
</content>
</entry>
</feed>
