<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dcpomatic/src/lib/encoder.cc, branch v2.9.23</title>
<subtitle>DCP-o-matic DCP tools</subtitle>
<id>https://git.carlh.net/cgit/dcpomatic/atom?h=v2.9.23</id>
<link rel='self' href='https://git.carlh.net/cgit/dcpomatic/atom?h=v2.9.23'/>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/'/>
<updated>2016-08-15T13:56:42Z</updated>
<entry>
<title>compose/raw_convert fiddling.</title>
<updated>2016-08-15T13:56:42Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-08-15T13:56:42Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=8e96f8c1677146d224438ec040982532879d6c34'/>
<id>urn:sha1:8e96f8c1677146d224438ec040982532879d6c34</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove all use of stringstream in an attempt to fix</title>
<updated>2016-08-12T08:13:51Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-08-10T15:38:33Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=b1dc9c3a2f7e55c9afc5bf2d5b465371b048e14f'/>
<id>urn:sha1:b1dc9c3a2f7e55c9afc5bf2d5b465371b048e14f</id>
<content type='text'>
the suspected thread-unsafe crash bugs on OS X.
</content>
</entry>
<entry>
<title>Do EncodeServerFinder 'disable' in a more sensible way.</title>
<updated>2016-07-20T09:47:49Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-07-20T09:47:49Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=57d00c880094b1dfebaee18f4ecafb1dd44b0afb'/>
<id>urn:sha1:57d00c880094b1dfebaee18f4ecafb1dd44b0afb</id>
<content type='text'>
Just stop the threads and clear the server list when
stop() is called.
</content>
</entry>
<entry>
<title>Try to fix intermittent deadlocks with encoding servers.</title>
<updated>2016-07-20T09:21:13Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-07-20T09:21:13Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=b34310b4e90af1442363fe09db082d68e1721130'/>
<id>urn:sha1:b34310b4e90af1442363fe09db082d68e1721130</id>
<content type='text'>
Before this commit all encoding threads could be removed and then
::encode would always wait on _full_condition no matter what the
queue size.
</content>
</entry>
<entry>
<title>Small tweaks to times in progress reports.</title>
<updated>2016-06-29T15:46:30Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-06-29T15:46:30Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=a07b5d79f2ac072d550ccb5587fe527c5340e248'/>
<id>urn:sha1:a07b5d79f2ac072d550ccb5587fe527c5340e248</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix crash when no video is being encoded.</title>
<updated>2016-06-20T21:41:31Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-06-20T21:41:31Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=c7ba9145f246a66eac7d2d46da56b2f7f10bcc37'/>
<id>urn:sha1:c7ba9145f246a66eac7d2d46da56b2f7f10bcc37</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix encoder thread interruption.</title>
<updated>2016-06-20T16:15:07Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-06-20T16:15:07Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=41737ca62d65bcd6c25ec1080c0c7e0e6e6ae9b2'/>
<id>urn:sha1:41737ca62d65bcd6c25ec1080c0c7e0e6e6ae9b2</id>
<content type='text'>
When an encoder thread is interrupted we just want it silently
to stop, so catch boost::thread_interrupted separately and don't
pass it on.

I believe the interruption of jobs and subsequent catch of
boost::thread_interrupted will still work as that's the job thread
rather than the encoder threads.
</content>
</entry>
<entry>
<title>Encoder shutdown fixes.</title>
<updated>2016-06-20T14:02:15Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-06-20T14:02:15Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=795e5d916707da498acc7079ae1fb10aa6af6973'/>
<id>urn:sha1:795e5d916707da498acc7079ae1fb10aa6af6973</id>
<content type='text'>
Two fixes here; prevent the servers-list-changed callback being
called when Encoder is being destroyed, and stop ~Encoder throwing
exceptions.

I'm not sure if the catch (...) in ~Encoder will hide problems
that we should be handling, but I think by the time ~Encoder
is happening we'll already have seen any exceptions that we
need to report.
</content>
</entry>
<entry>
<title>Clean up of 3D-&gt;2D conversion.</title>
<updated>2016-06-14T14:07:58Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-06-14T14:07:58Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=0b6f2d7b04819711228ed5fbc5d299b58cef997e'/>
<id>urn:sha1:0b6f2d7b04819711228ed5fbc5d299b58cef997e</id>
<content type='text'>
It makes slightly more sense to discard 2D in the Transcoder
rather than the Encoder.  Unfortunately this requires quite
invasive changes, mainly to remove Encoder::_position and instead
derive this information from the PlayerVideo that is being handled.
This is also nicer than before, I think.

A notable change is that in player.cc; using time rather than
content_video_to_dcp().  This means we are assuming that the decoder
returns video at the time we ask it to, rather than checking
what it has returned.  I can't think of a problem with this (yet).
</content>
</entry>
<entry>
<title>Discard right-eye images when using 3D sources to make 2D DCPs.</title>
<updated>2016-06-14T11:58:57Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2016-06-14T11:58:57Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=b5e7d7127cf06f5309d2ac652d41861de59d6232'/>
<id>urn:sha1:b5e7d7127cf06f5309d2ac652d41861de59d6232</id>
<content type='text'>
</content>
</entry>
</feed>
