summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-02-20Fix non-aligned subtitle access in the subtitle examiner as well.v2.14.28Carl Hetherington
2020-02-20Allow macOS builds against 10.6 (universal) or 10.9 (thin).Carl Hetherington
2020-02-19Cleanups to normalise master and 2.15.x better.v2.14.27Carl Hetherington
2020-02-19New way of checking for 2D content mislabelled as 3D (#1565).Carl Hetherington
Required because of the change to the way video frame timing is done.
2020-02-18Fix errors with TYPE_3D introduced in video timestamping fix.Carl Hetherington
2020-02-18Re-throw butler errors at the end of an encode.Carl Hetherington
2020-02-18Report when butler returns no video because it died.Carl Hetherington
2020-02-18Add compile_commands.json symlink.Carl Hetherington
2020-02-18Merge branch 'master' of ssh://git.carlh.net/home/carl/git/dcpomaticCarl Hetherington
2020-02-18Write logs during tests to a file.Carl Hetherington
2020-02-18Remove unused variable.Carl Hetherington
2020-02-18Remove incorrect comment.Carl Hetherington
2020-02-18Missed part of new video timing patch.Carl Hetherington
2020-02-17Better errors if butler doesn't give video during export.Carl Hetherington
2020-02-16Better assertion error in copy_from.Carl Hetherington
2020-02-16Potential fix for #1568; we calculate the remaining DCPTime butCarl Hetherington
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.
2020-02-16Fix deadlock during content examination.Carl Hetherington
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
2020-02-15Don't trust video timestamps from FFmpegDecoder.Carl Hetherington
Back-ported from 98342fb53eae4d32440fc69c279f2ca0fef785b5 in v2.15.x.
2020-02-06Fix crash with bitmapped subs that have zero width or height.Carl Hetherington
Back-ported from dec5ae11238495c64fffdab37f189d96aed7d636 in v2.15.x.
2020-01-28Add new script.Carl Hetherington
2020-01-28Various improvements to make_dummy_filesCarl Hetherington
2020-01-27Update for new test/data file.v2.14.26Carl Hetherington
2020-01-27Fix crash with sub-sample push parts in AudioMerger.Carl Hetherington
2020-01-27Add header guard.Carl Hetherington
2020-01-27Add some temporary 'instrumentation' of AudioMerger.Carl Hetherington
2020-01-25Fix casting of bytes to words, and hence (hopefully) finally fix incorrect ↵Carl Hetherington
bitmapped subtitle colours. Backported from 74168425c45987b45d4f4e147fb45fab33c3cab9 in v2.15.x.
2020-01-24Bump libsub for build fix.v2.14.25Carl Hetherington
2020-01-23Support binary STL subtitle files.v2.14.24Carl Hetherington
2020-01-17Add patron.v2.14.23Carl Hetherington
2020-01-16Merge branch 'master' of ssh://git.carlh.net/home/carl/git/dcpomaticCarl Hetherington
2020-01-16Make FileError say what path the problem was with.Carl Hetherington
Backported from 2ba5edb6761dbb14e4906200cb4e57c4180541ff in master.
2020-01-14Add some PT-style names to the guesswork on which channel a particular sound ↵Carl Hetherington
file belongs to. Backported from 0dca360f831aa51a4c0a33caa18e78c07391f3b7 in v2.15.x.
2020-01-14Stop invalid dates causing boost::posix_time to raise exceptions.Carl Hetherington
Backported from 7f05d8fd54632f72a09b6be1b8b4cf692f290b55 in v2.15.x.
2020-01-10Don't truncate active_video_frame_rate to an int otherwise setting fade on ↵Carl Hetherington
non-integer-rate sources behaves oddly. Backported from a972af6dcbdb0b8a1c5386d34a0cea2c12738a67 in v2.15.x.
2020-01-09Give DCPDecoder its own ::position which just returns its internalv2.14.22Carl Hetherington
_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.
2020-01-09Update text panel 'why not' note when film's standard is changed.Carl Hetherington
2020-01-07Update patreon username.v2.14.21Carl Hetherington
2020-01-07Try to add FUNDING.yml.Carl Hetherington
2020-01-07Fix typo causing failures to update the preview after changingCarl Hetherington
end trim (#1709 and probably #1434).
2020-01-07Extend the amount of allowed disagreement between the audioCarl Hetherington
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.
2020-01-03Fix failure to save screen notes when making a new one (github bug #6).Carl Hetherington
2019-12-27Add --config option to dcpomatic2 (#1703).Carl Hetherington
2019-12-27Add --version option to main DCP-o-matic.Carl Hetherington
2019-12-19Remove our forcing of analyzeduration and probesize as they seem tov2.14.20Carl Hetherington
cause weird problems when scanning some files. The unit test case added here is a case in point: before this patch one stream reported an incorrect channel count and sample rate. It's a bit worrying as these parameters have been in DoM for many years, but perhaps they have become unnecessary / harmful with changes to FFmpeg.
2019-12-18Accept float fps when getting timecodes from the Timecode controlv2.14.19Carl Hetherington
otherwise inaccurate values are returned for non-integer rates. Should fix #1694.
2019-12-16Flush audio decoder when a DCPDecoder finishes so thatv2.14.18Carl Hetherington
resamplers are emptied and hence we don't lose any samples. Fixes #1691.
2019-12-16Restore old v2.14.x version of test reference.Carl Hetherington
2019-12-15Stop empty Font IDs in imported DCP subtitles making it into theCarl Hetherington
output DCP (#1689). Back-ported from d8d4225a3e488cf78438b80938aa18fd07d30a06 in v2.15.x
2019-12-15Update test/data and make a branch for v2.14.x there.Carl Hetherington
2019-12-10Make terminate_threads() less likely to leave _threads containing invalid ↵Carl Hetherington
pointers.