<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dcpomatic, branch v2.15.41</title>
<subtitle>DCP-o-matic DCP tools</subtitle>
<id>https://git.carlh.net/cgit/dcpomatic/atom?h=v2.15.41</id>
<link rel='self' href='https://git.carlh.net/cgit/dcpomatic/atom?h=v2.15.41'/>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/'/>
<updated>2020-01-10T14:20:17Z</updated>
<entry>
<title>Don't truncate active_video_frame_rate to an int otherwise setting fade on non-integer-rate sources behaves oddly.</title>
<updated>2020-01-10T14:20:17Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2020-01-10T14:20:17Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=a972af6dcbdb0b8a1c5386d34a0cea2c12738a67'/>
<id>urn:sha1:a972af6dcbdb0b8a1c5386d34a0cea2c12738a67</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix deadlock.</title>
<updated>2020-01-10T14:13:35Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2020-01-10T14:13:35Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=ba983cf47c98be684ee6ac1560f55364016b16f8'/>
<id>urn:sha1:ba983cf47c98be684ee6ac1560f55364016b16f8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Give DCPDecoder its own ::position which just returns its internal</title>
<updated>2020-01-10T00:01:03Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2020-01-09T23:52:20Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=efc3486f2acf36bd0dc7b5528e7b3110ea8c4afe'/>
<id>urn:sha1:efc3486f2acf36bd0dc7b5528e7b3110ea8c4afe</id>
<content type='text'>
_next time.

This is important because Decoder::position does the wrong thing
with DCPs in the following case.

1.  DCPDecoder emits a subtitle event (start/stop) at time t.
2.  There follows a long time T with no subtitle events.  During
    this time the DCPDecoder's position is reported as t (since
    TextDecoder notes its position as the time of the last thing
    it emitted --- which is all it reasonably can do, I think).
3.  During this T the DCPDecoder may be incorrectly pass()ed because
    its position is reported as earlier than it really is; this results
    in video/audio being emitted by the DCPDecoder but other contemporary
    sources may not be pass()ed.

The upshot of this can be that no audio is emitted, as a contemporary audio
source is not pass()ed and hence the merger is waiting for audio that will
take a long time to come.  When the butler is running this can result in
audio underruns as the video buffers overflow with no sign of any audio.

It is also simpler this way; DCPDecoder was already maintaining the required
information.
</content>
</entry>
<entry>
<title>Update text panel 'why not' note when film's standard is changed.</title>
<updated>2020-01-09T22:25:18Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2020-01-09T22:22:22Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=75e31f6b26b2c0775c51fe83938aab7ccbb2684b'/>
<id>urn:sha1:75e31f6b26b2c0775c51fe83938aab7ccbb2684b</id>
<content type='text'>
Forward-ported from e8582393bd1367fff36bae8e053d799073d8b2ed in master.
</content>
</entry>
<entry>
<title>Make the 'why not' messages for VF a bit clearer.</title>
<updated>2020-01-09T22:24:35Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2020-01-09T22:24:32Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=886e0f9d08a241bef5baf328beb08a0d6996ae14'/>
<id>urn:sha1:886e0f9d08a241bef5baf328beb08a0d6996ae14</id>
<content type='text'>
Before it sounded like just because we couldn't refer to (e.g.) the audio
we couldn't refer to any part of the DCP.
</content>
</entry>
<entry>
<title>Merge a set of changes which run the OpenGL video updates in a separate</title>
<updated>2020-01-08T21:22:01Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2020-01-08T21:22:01Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=579d18cb7770efe2da03afaf6a33faaf624119e3'/>
<id>urn:sha1:579d18cb7770efe2da03afaf6a33faaf624119e3</id>
<content type='text'>
thread, hopefully making things more elegant and robust.
</content>
</entry>
<entry>
<title>First version of player stress-test management script.</title>
<updated>2020-01-08T20:56:47Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2019-12-11T23:45:16Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=23590dc430e4ef2351209e30a26ba04fecca2872'/>
<id>urn:sha1:23590dc430e4ef2351209e30a26ba04fecca2872</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Some comments.</title>
<updated>2020-01-08T20:56:47Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2019-11-25T23:37:42Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=b1589146e73ad97d3f29e9d5cafe61e5424796a4'/>
<id>urn:sha1:b1589146e73ad97d3f29e9d5cafe61e5424796a4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Some simple-video-view tidy-ups.</title>
<updated>2020-01-08T20:56:47Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2019-11-25T23:33:46Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=c967096b5061e4bbb3a275d4daf04a2b9c084468'/>
<id>urn:sha1:c967096b5061e4bbb3a275d4daf04a2b9c084468</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix problems when starting to play after a seek, if the start</title>
<updated>2020-01-08T20:56:47Z</updated>
<author>
<name>Carl Hetherington</name>
<email>cth@carlh.net</email>
</author>
<published>2019-11-25T23:32:37Z</published>
<link rel='alternate' type='text/html' href='https://git.carlh.net/cgit/dcpomatic/commit/?id=0b21bfba60be812a5d04cc5c10868e04b5579404'/>
<id>urn:sha1:0b21bfba60be812a5d04cc5c10868e04b5579404</id>
<content type='text'>
of playback happens while we are awaiting an idle handler to
go through to update the view after the seek.

If this idle handler has not gone through the viewer will report
an incorrect position, which is used by the FilmViewer to start
the audio stream at the wrong time.
</content>
</entry>
</feed>
