dcpomatic.git
3 years agoUpdate test/data for removed Film metadata tags Signed and UploadAfterMakeDCP v2.15.78
Carl Hetherington [Thu, 11 Jun 2020 17:18:17 +0000 (19:18 +0200)]
Update test/data for removed Film metadata tags Signed and UploadAfterMakeDCP

3 years agoBump libdcp to fix failure to verify DCPs when the DTD path
Carl Hetherington [Thu, 11 Jun 2020 14:57:58 +0000 (16:57 +0200)]
Bump libdcp to fix failure to verify DCPs when the DTD path
has spaces in it (i.e. Windows) (#1766).

3 years agoI think we can waf install on the cscript build action even on Windows.
Carl Hetherington [Thu, 11 Jun 2020 12:29:43 +0000 (14:29 +0200)]
I think we can waf install on the cscript build action even on Windows.

3 years agoBump ffmpeg-cdist for ccache fixes on Windows.
Carl Hetherington [Thu, 11 Jun 2020 12:16:51 +0000 (14:16 +0200)]
Bump ffmpeg-cdist for ccache fixes on Windows.

3 years agoBump libdcp for fix to missing .xsd files in the install.
Carl Hetherington [Thu, 11 Jun 2020 09:20:00 +0000 (11:20 +0200)]
Bump libdcp for fix to missing .xsd files in the install.

3 years agoBump libdcp/libsub to get a Windows ccache build fix.
Carl Hetherington [Thu, 11 Jun 2020 08:52:57 +0000 (10:52 +0200)]
Bump libdcp/libsub to get a Windows ccache build fix.

3 years agoAdd some missing .xsd files to the Windows installer; may help with #1766.
Carl Hetherington [Wed, 10 Jun 2020 23:56:30 +0000 (01:56 +0200)]
Add some missing .xsd files to the Windows installer; may help with #1766.

3 years agoTry to provide some platform-specific menu text for 'show DCP in <thing>'
Carl Hetherington [Mon, 8 Jun 2020 23:45:00 +0000 (01:45 +0200)]
Try to provide some platform-specific menu text for 'show DCP in <thing>'

3 years agoAssorted GTK3 layout tidying in KDM dialogs.
Carl Hetherington [Mon, 8 Jun 2020 23:18:03 +0000 (01:18 +0200)]
Assorted GTK3 layout tidying in KDM dialogs.

3 years agoAdd a bunch of SetFocus calls.
Carl Hetherington [Mon, 8 Jun 2020 19:31:20 +0000 (21:31 +0200)]
Add a bunch of SetFocus calls.

3 years agoAdd space next to "use best" button.
Carl Hetherington [Mon, 8 Jun 2020 18:49:32 +0000 (20:49 +0200)]
Add space next to "use best" button.

3 years agoRemove unnecessary setup of _frame_rate_sizer which is
Carl Hetherington [Mon, 8 Jun 2020 18:49:11 +0000 (20:49 +0200)]
Remove unnecessary setup of _frame_rate_sizer which is
recreated later anyway.

3 years agoAdd a border round EditableLists on GTK3, otherwise they are hard to see.
Carl Hetherington [Mon, 8 Jun 2020 18:24:16 +0000 (20:24 +0200)]
Add a border round EditableLists on GTK3, otherwise they are hard to see.

3 years agoSet focus on opening dialog.
Carl Hetherington [Mon, 8 Jun 2020 18:23:52 +0000 (20:23 +0200)]
Set focus on opening dialog.

3 years agoImprove look of DCP metadata dialogue on scaling (#1762).
Carl Hetherington [Mon, 8 Jun 2020 17:41:10 +0000 (19:41 +0200)]
Improve look of DCP metadata dialogue on scaling (#1762).

3 years agoSpaces between content buttons in GTK3 (#1761).
Carl Hetherington [Mon, 8 Jun 2020 17:35:08 +0000 (19:35 +0200)]
Spaces between content buttons in GTK3 (#1761).

3 years agoMove upload-DCP-to-TMS button to preferences.
Carl Hetherington [Mon, 8 Jun 2020 16:21:37 +0000 (18:21 +0200)]
Move upload-DCP-to-TMS button to preferences.

3 years agoRemove encryption key options (#1760).
Carl Hetherington [Mon, 8 Jun 2020 00:16:06 +0000 (02:16 +0200)]
Remove encryption key options (#1760).

3 years agoAlways sign DCPs (#1760).
Carl Hetherington [Mon, 8 Jun 2020 00:11:18 +0000 (02:11 +0200)]
Always sign DCPs (#1760).

3 years agoFix erroneous hints about content being narrower than scope when it is near 2.35...
Carl Hetherington [Fri, 5 Jun 2020 23:56:11 +0000 (01:56 +0200)]
Fix erroneous hints about content being narrower than scope when it is near 2.35:1 (#1751).

3 years agoMake run script work when called from a different directory; some cleanup.
Carl Hetherington [Fri, 5 Jun 2020 23:18:53 +0000 (01:18 +0200)]
Make run script work when called from a different directory; some cleanup.

3 years agoThis AtomicityChecker was introduced a long time ago for reasons
Carl Hetherington [Thu, 4 Jun 2020 23:18:46 +0000 (01:18 +0200)]
This AtomicityChecker was introduced a long time ago for reasons
that are unclear.

This commit removes it because it was causing a bug whereby the
_suspended count on Butler would not go back down to 0 due to signals
being blocked by the AtomicityChecker.

I can see two possibilities:

1. AtomicityChecker is a band-aid for some deeper problem, in which
case other bugs will become apparent.  Perhaps it relates to signals
being sent before the butler/player/playlist are connected to content.

2. AtomicityChecker was correct but was not identifiying signals
from different pieces of content correctly; so the correct fix would
be to add the content pointer to the _checker.send() call and block
based also on that.

3 years agoAdd defensive check.
Carl Hetherington [Thu, 4 Jun 2020 23:18:31 +0000 (01:18 +0200)]
Add defensive check.

3 years agoFix thinko causing crashes when loading projects with legacy video ratios.
Carl Hetherington [Thu, 4 Jun 2020 22:09:31 +0000 (00:09 +0200)]
Fix thinko causing crashes when loading projects with legacy video ratios.

3 years agoFix crash when previewing projects with fewer than 6 audio channels;
Carl Hetherington [Thu, 4 Jun 2020 22:07:29 +0000 (00:07 +0200)]
Fix crash when previewing projects with fewer than 6 audio channels;
the old code tried to copy audio just because its channel had a non-0
value in the map without checking whether the destination channel
actually existed.

3 years agoOnly add ExamineContentJobs after a failed CheckContentChangeJob
Carl Hetherington [Thu, 4 Jun 2020 19:39:10 +0000 (21:39 +0200)]
Only add ExamineContentJobs after a failed CheckContentChangeJob
if we are in the GUI.  In the CLI client we will give up if the
CheckContentChangeJob fails, and immediately destroy the job manager
which doesn't end well if we have jobs running at the time.

3 years agoFall back to $PATH when searching for dcpomatic2_openssl.
Carl Hetherington [Thu, 4 Jun 2020 18:47:36 +0000 (20:47 +0200)]
Fall back to $PATH when searching for dcpomatic2_openssl.

3 years agoBump ffmpeg to get ccache fix.
Carl Hetherington [Thu, 4 Jun 2020 14:34:30 +0000 (16:34 +0200)]
Bump ffmpeg to get ccache fix.

3 years agoMissing virtual destructor.
Carl Hetherington [Wed, 3 Jun 2020 14:40:11 +0000 (16:40 +0200)]
Missing virtual destructor.

3 years agoClean up handling of paths relative to the executable.
Carl Hetherington [Wed, 3 Jun 2020 10:21:28 +0000 (12:21 +0200)]
Clean up handling of paths relative to the executable.

3 years agoWhite space fix.
Carl Hetherington [Wed, 3 Jun 2020 09:42:46 +0000 (11:42 +0200)]
White space fix.

3 years agoStart pinning libdcp/libsub versions again. v2.15.77
Carl Hetherington [Mon, 1 Jun 2020 22:23:43 +0000 (00:23 +0200)]
Start pinning libdcp/libsub versions again.

3 years agoHidden debug option to make _disk not start _disk_writer on Linux. v2.15.76
Carl Hetherington [Mon, 1 Jun 2020 20:47:17 +0000 (22:47 +0200)]
Hidden debug option to make _disk not start _disk_writer on Linux.

3 years agoRemove unused forward declaration.
Carl Hetherington [Wed, 27 May 2020 20:57:33 +0000 (22:57 +0200)]
Remove unused forward declaration.

3 years agoSome small manual updates.
Carl Hetherington [Tue, 26 May 2020 22:35:58 +0000 (00:35 +0200)]
Some small manual updates.

3 years agoMore fun with GTK3 and its enormous SpinButtons.
Carl Hetherington [Mon, 25 May 2020 21:57:52 +0000 (23:57 +0200)]
More fun with GTK3 and its enormous SpinButtons.

3 years agoDon't offer full-frame containers unless 'allow any container' is enabled.
Carl Hetherington [Mon, 25 May 2020 21:54:33 +0000 (23:54 +0200)]
Don't offer full-frame containers unless 'allow any container' is enabled.

3 years agoUse wxDC for all drawing of the audio mapping view, removing
Carl Hetherington [Sun, 24 May 2020 12:20:43 +0000 (14:20 +0200)]
Use wxDC for all drawing of the audio mapping view, removing
use of wxGraphicsContext.  This seems to fix strange rendering
problems on Windows.

3 years agoFix audio mapping view on GTK3, with some cleanups that mess up
Carl Hetherington [Sat, 23 May 2020 22:00:17 +0000 (00:00 +0200)]
Fix audio mapping view on GTK3, with some cleanups that mess up
display on Windows (fixed in the next commit).

3 years agoLayout tweaks for GTK3.
Carl Hetherington [Sat, 23 May 2020 20:59:39 +0000 (22:59 +0200)]
Layout tweaks for GTK3.

3 years agoWe must only link gtk2 if wx is also using it.
Carl Hetherington [Thu, 21 May 2020 22:26:53 +0000 (00:26 +0200)]
We must only link gtk2 if wx is also using it.

3 years agoWhite space.
Carl Hetherington [Thu, 21 May 2020 22:26:27 +0000 (00:26 +0200)]
White space.

3 years agoFix enabled/disable overlapping video/audio with DCP content (part of #1355)
Carl Hetherington [Tue, 19 May 2020 11:17:10 +0000 (13:17 +0200)]
Fix enabled/disable overlapping video/audio with DCP content (part of #1355)

3 years agoGive 'wrong target' KDM errors in a dialogue box rather than in the job manager ...
Carl Hetherington [Wed, 20 May 2020 22:05:50 +0000 (00:05 +0200)]
Give 'wrong target' KDM errors in a dialogue box rather than in the job manager (part of #1161).

3 years agoTell the user when they load a KDM which will not do anything useful (part of #1161).
Carl Hetherington [Wed, 20 May 2020 20:08:52 +0000 (22:08 +0200)]
Tell the user when they load a KDM which will not do anything useful (part of #1161).

3 years agoRound the length of video-containing content to the nearest frame.
Carl Hetherington [Wed, 20 May 2020 18:20:47 +0000 (20:20 +0200)]
Round the length of video-containing content to the nearest frame.
It seems reasonable, and is in the spirit of how positions are
rounded to frame boundaries.

It also fixes problems with unnecessary frames of black being
created at the end of trimmed files, where there can be
rounding-error-based confusion about where the content stops and
the black begins.

3 years agoAdd some context markers to a test.
Carl Hetherington [Wed, 20 May 2020 18:20:21 +0000 (20:20 +0200)]
Add some context markers to a test.

3 years agoAdd a bit more debug logging to the player.
Carl Hetherington [Wed, 20 May 2020 18:20:08 +0000 (20:20 +0200)]
Add a bit more debug logging to the player.

3 years agoTry rounding length_after_trim.
Carl Hetherington [Wed, 20 May 2020 12:36:16 +0000 (14:36 +0200)]
Try rounding length_after_trim.

3 years agoRename TYPE_DEBUG_PLAYER to TYPE_DEBUG_VIDEO_VIEW.
Carl Hetherington [Wed, 20 May 2020 08:02:06 +0000 (10:02 +0200)]
Rename TYPE_DEBUG_PLAYER to TYPE_DEBUG_VIDEO_VIEW.

3 years agoDifficult to see how any unprotected write with multiple readers
Carl Hetherington [Tue, 19 May 2020 23:51:25 +0000 (01:51 +0200)]
Difficult to see how any unprotected write with multiple readers
could be safe.

3 years agoCut the work done by a couple of tests, as previously they took
Carl Hetherington [Tue, 19 May 2020 22:13:07 +0000 (00:13 +0200)]
Cut the work done by a couple of tests, as previously they took
a much longer time for questionable benefit in terms of test
coverage.

3 years agoMore logging and make it go to the right place.
Carl Hetherington [Mon, 18 May 2020 23:39:47 +0000 (01:39 +0200)]
More logging and make it go to the right place.

3 years agoImprove test_timings script.
Carl Hetherington [Mon, 18 May 2020 22:45:35 +0000 (00:45 +0200)]
Improve test_timings script.

3 years agoUse test_suite log level with --debug so we can see when tests take
Carl Hetherington [Mon, 18 May 2020 19:54:55 +0000 (21:54 +0200)]
Use test_suite log level with --debug so we can see when tests take
long enough to time-out Jenkins.

3 years agoRun all tests with lots of encoding threads.
Carl Hetherington [Sun, 17 May 2020 21:30:44 +0000 (23:30 +0200)]
Run all tests with lots of encoding threads.

3 years agoFix DCP playback when an incorrect KDM is added, followed by
Carl Hetherington [Wed, 20 May 2020 19:55:13 +0000 (21:55 +0200)]
Fix DCP playback when an incorrect KDM is added, followed by
a correct one.

3 years agoFix DKDM generation by moving the validity period a day inside the certificate validity.
Carl Hetherington [Wed, 20 May 2020 19:12:27 +0000 (21:12 +0200)]
Fix DKDM generation by moving the validity period a day inside the certificate validity.

3 years agoStop xcrun errors silently killing the build. v2.15.75
Carl Hetherington [Mon, 18 May 2020 11:36:19 +0000 (13:36 +0200)]
Stop xcrun errors silently killing the build.

3 years agoRemove unused variable.
Carl Hetherington [Mon, 18 May 2020 10:56:37 +0000 (12:56 +0200)]
Remove unused variable.

3 years agoAnother missed place for the link icon.
Carl Hetherington [Mon, 18 May 2020 10:21:56 +0000 (12:21 +0200)]
Another missed place for the link icon.

3 years agoAdd some missing messages.
Carl Hetherington [Mon, 18 May 2020 09:03:04 +0000 (11:03 +0200)]
Add some missing messages.

3 years agoFix missing icon in installer for a bunch of platforms. v2.15.74
Carl Hetherington [Mon, 18 May 2020 07:52:01 +0000 (09:52 +0200)]
Fix missing icon in installer for a bunch of platforms.

3 years agoAdd new version of check_dcp().
Carl Hetherington [Sun, 17 May 2020 21:19:44 +0000 (23:19 +0200)]
Add new version of check_dcp().

3 years agoAdd a new "Advanced settings" dialog for content, accessible
Carl Hetherington [Sun, 17 May 2020 21:18:15 +0000 (23:18 +0200)]
Add a new "Advanced settings" dialog for content, accessible
from the right-click menu.  Move the "use video" checkbox into
here, as it feels like excessive clutter to have it in the main
video panel.

Maybe other things should be hidden in here.  I'm looking at you,
video filters...

3 years agoAdd a descriptive comment to a test file.
Carl Hetherington [Sun, 17 May 2020 20:45:59 +0000 (22:45 +0200)]
Add a descriptive comment to a test file.

3 years agoFix empty (black) area calculations when video is set to not be used.
Carl Hetherington [Sun, 17 May 2020 20:22:31 +0000 (22:22 +0200)]
Fix empty (black) area calculations when video is set to not be used.

3 years agoFix typo in comment.
Carl Hetherington [Sun, 17 May 2020 20:21:43 +0000 (22:21 +0200)]
Fix typo in comment.

3 years agoClicking on the audio graph jumps to that position in the film (#1507).
Carl Hetherington [Sun, 17 May 2020 19:13:25 +0000 (21:13 +0200)]
Clicking on the audio graph jumps to that position in the film (#1507).

3 years agoMissing DLL for Windows build. v2.15.73
Carl Hetherington [Sun, 17 May 2020 07:27:40 +0000 (09:27 +0200)]
Missing DLL for Windows build.

3 years agoTypo fix. v2.15.72
Carl Hetherington [Thu, 14 May 2020 18:43:21 +0000 (20:43 +0200)]
Typo fix.

3 years agoChristie FTP contains certificate chains, not just leaf certificates.
Carl Hetherington [Thu, 14 May 2020 18:35:32 +0000 (20:35 +0200)]
Christie FTP contains certificate chains, not just leaf certificates.

3 years agoDon't say 'certificate downloaded' if it failed during the read part.
Carl Hetherington [Thu, 14 May 2020 18:14:52 +0000 (20:14 +0200)]
Don't say 'certificate downloaded' if it failed during the read part.

3 years agoRe-work scaling following excellent insights by Carsten Kurz, described
Carl Hetherington [Tue, 12 May 2020 18:34:42 +0000 (20:34 +0200)]
Re-work scaling following excellent insights by Carsten Kurz, described
on #1669.  Now the scaling of video content is guessed based on its
aspect ratio (taking into account pixel aspect ratio) and there is a
"custom" option for overriding incorrectly-marked-up content or content
which actually needs its shape to be changed.

Essentially we are defaulting to what used to be called "no stretch".

This commit also adds buttons to change left/right and top/bottom
crop together, and auto-guessing of DCP container size when any change
results in there being just one piece of video content in a project.

These changes include breaking changes to metadata.xml; old projects
should load (with new settings that preserve the project's apperance)
but once saved they will not load into 2.14.x.  DCP-o-matic saves a
backup file (metadata.37.xml) when 2.15.x loads an old project.

3 years agoFix test failures with new verification note in libdcp. scaling-rework
Carl Hetherington [Tue, 12 May 2020 14:54:54 +0000 (16:54 +0200)]
Fix test failures with new verification note in libdcp.

3 years agoAdd crop left/right top/bottom link control.
Carl Hetherington [Mon, 11 May 2020 22:11:01 +0000 (00:11 +0200)]
Add crop left/right top/bottom link control.

3 years agoMove bitmap_path() to wx_util.{cc,h}
Carl Hetherington [Mon, 11 May 2020 22:10:38 +0000 (00:10 +0200)]
Move bitmap_path() to wx_util.{cc,h}

3 years agoAdd _view_changed callback to ContentWidget.
Carl Hetherington [Mon, 11 May 2020 22:10:13 +0000 (00:10 +0200)]
Add _view_changed callback to ContentWidget.

3 years agoGuess DCP container size and resolution when content is added
Carl Hetherington [Mon, 11 May 2020 20:42:32 +0000 (22:42 +0200)]
Guess DCP container size and resolution when content is added
or removed such that there is one piece of video content left
in the project.

Container size and resolution are never again guessed once the
user has set them to something.

3 years agoRemove now-unused default-scale-to config option.
Carl Hetherington [Sun, 10 May 2020 23:50:01 +0000 (01:50 +0200)]
Remove now-unused default-scale-to config option.

3 years agoChange video content scaling so that it either:
Carl Hetherington [Sat, 9 May 2020 23:57:20 +0000 (01:57 +0200)]
Change video content scaling so that it either:

1. scales the content up to fit the DCP container,
preserving aspect ratio, or
2. stretches the content to a custom aspect ratio, or
3. scales the content to some custom size.

3 years agoReformat crop controls.
Carl Hetherington [Sun, 10 May 2020 19:43:24 +0000 (21:43 +0200)]
Reformat crop controls.

3 years agoRemove scale to fit {width,height} options.
Carl Hetherington [Sat, 9 May 2020 22:23:48 +0000 (00:23 +0200)]
Remove scale to fit {width,height} options.

3 years agoAdd a crazy amount of missed files from the previous commit.
Carl Hetherington [Wed, 6 May 2020 22:43:23 +0000 (00:43 +0200)]
Add a crazy amount of missed files from the previous commit.

3 years agoBump ffmpeg to carl-dcpomatic-12 (4.2.2).
Carl Hetherington [Wed, 6 May 2020 22:06:44 +0000 (00:06 +0200)]
Bump ffmpeg to carl-dcpomatic-12 (4.2.2).

3 years agoAdd a new "Add DKDM" dialogue (#1637).
Carl Hetherington [Wed, 6 May 2020 22:02:26 +0000 (00:02 +0200)]
Add a new "Add DKDM" dialogue (#1637).

The basic motivation here is to avoid having to tell people to
"just" create a cinema with a screen in it just to be able to make
a DKDM.  Here you can just have a recipient, with emails etc.
and make DKDMs for them.  I hope this makes things clearer from the
user POV even if it does muddy the waters a bit with respect to
DKDMs just being KDMs (really).

3 years agoAdd a 'Make DKDM' dialogue box to simplify and (hopefully) clarify DKDM creation...
Carl Hetherington [Wed, 6 May 2020 22:00:40 +0000 (00:00 +0200)]
Add a 'Make DKDM' dialogue box to simplify and (hopefully) clarify DKDM creation (#1637).

3 years agoMissing header guard.
Carl Hetherington [Wed, 6 May 2020 21:58:51 +0000 (23:58 +0200)]
Missing header guard.

3 years agoAdd configuration options for DKDMs.
Carl Hetherington [Wed, 6 May 2020 21:58:36 +0000 (23:58 +0200)]
Add configuration options for DKDMs.

3 years agoDerive Screen from a new class KDMRecipient.
Carl Hetherington [Wed, 29 Apr 2020 23:06:13 +0000 (01:06 +0200)]
Derive Screen from a new class KDMRecipient.

3 years agoMove TrustedDevice to its own source files.
Carl Hetherington [Wed, 29 Apr 2020 22:28:33 +0000 (00:28 +0200)]
Move TrustedDevice to its own source files.

3 years agoIgnore screen specifier when making containers.
Carl Hetherington [Wed, 6 May 2020 18:14:46 +0000 (20:14 +0200)]
Ignore screen specifier when making containers.

3 years agoAdd some unit tests.
Carl Hetherington [Tue, 5 May 2020 20:28:35 +0000 (22:28 +0200)]
Add some unit tests.

3 years agoExtract common code out into kdm_for_screen()
Carl Hetherington [Tue, 5 May 2020 20:28:25 +0000 (22:28 +0200)]
Extract common code out into kdm_for_screen()

3 years agoconst correctness.
Carl Hetherington [Tue, 5 May 2020 20:27:54 +0000 (22:27 +0200)]
const correctness.

3 years agoRemove some now-pointless passing of name_values.
Carl Hetherington [Tue, 5 May 2020 18:03:55 +0000 (20:03 +0200)]
Remove some now-pointless passing of name_values.

3 years agoUse a template to clean things up a little.
Carl Hetherington [Tue, 5 May 2020 13:30:15 +0000 (15:30 +0200)]
Use a template to clean things up a little.

3 years agoSet 'i' earlier in name_values.
Carl Hetherington [Tue, 5 May 2020 13:24:36 +0000 (15:24 +0200)]
Set 'i' earlier in name_values.

3 years agoWrite 'f', 'b' and 'e' tags into all KDMWithMetadata when they are made.
Carl Hetherington [Tue, 5 May 2020 13:08:50 +0000 (15:08 +0200)]
Write 'f', 'b' and 'e' tags into all KDMWithMetadata when they are made.

3 years agoRename some variables and re-implement collect().
Carl Hetherington [Tue, 5 May 2020 12:16:36 +0000 (14:16 +0200)]
Rename some variables and re-implement collect().