<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dcpomatic/src/lib/player.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>Use more direct route to fix hangs after calling some Player methods.</title>
<updated>2018-08-10T13:50:45Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-08-10T13:50:45Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=6b9bda07984837d188064f3f5514d0aa132655ec'/>
<id>urn:sha1:6b9bda07984837d188064f3f5514d0aa132655ec</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Try to fix Windows build.</title>
<updated>2018-08-10T01:28:10Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-08-10T01:28:10Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=c9a97108df1d609bd13df8a21bee11d7ca55feea'/>
<id>urn:sha1:c9a97108df1d609bd13df8a21bee11d7ca55feea</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add some Changed() emissions so that when a butler is in control</title>
<updated>2018-08-10T01:13:51Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-08-10T01:12:51Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=672b6dd3356d4cbf8703777538d396dbb868b96d'/>
<id>urn:sha1:672b6dd3356d4cbf8703777538d396dbb868b96d</id>
<content type='text'>
we always do a seek when we set _have_valid_pieces to false.
</content>
</entry>
<entry>
<title>Fix writer assertion at the end of some 3D encodes; one too many fill frames were being emitted.</title>
<updated>2018-08-09T21:31:11Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-08-09T21:28:27Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=fcab3e1bf6c6f05ca714eb9e337ff50f13fff6a6'/>
<id>urn:sha1:fcab3e1bf6c6f05ca714eb9e337ff50f13fff6a6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rather dubious fix for crash due to the sequence:</title>
<updated>2018-08-09T21:31:11Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-08-08T22:59:26Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=33c42a2c411d7518d0db5dbe338d0b42192c2730'/>
<id>urn:sha1:33c42a2c411d7518d0db5dbe338d0b42192c2730</id>
<content type='text'>
  - playlist change
  - _have_valid_pieces -&gt; false
  - signal butler
  - but meanwhile, pass happens which calls setup_pieces and starts emitting
    data from time 0
  - this new data is not in sync with what's already in the audio ring buffers
</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>Some subtitle renaming.</title>
<updated>2018-08-03T23:22:51Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-08-03T23:22:51Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=0a5e92450ae992e9ed24026dd60ae351d0a3e60b'/>
<id>urn:sha1:0a5e92450ae992e9ed24026dd60ae351d0a3e60b</id>
<content type='text'>
</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>Merge branch 'master' of ssh://git.carlh.net/home/carl/git/dcpomatic</title>
<updated>2018-07-27T15:14:41Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2018-07-27T15:14:41Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=ae4f0d9f55489ddc50b3e5f0d713621ee8f50645'/>
<id>urn:sha1:ae4f0d9f55489ddc50b3e5f0d713621ee8f50645</id>
<content type='text'>
</content>
</entry>
</feed>
