dcpomatic.git
5 months agoMove UTC offset for KDMs from the cinema to the point of KDM creation (#2300).
Carl Hetherington [Thu, 1 Dec 2022 21:30:58 +0000 (22:30 +0100)]
Move UTC offset for KDMs from the cinema to the point of KDM creation (#2300).

5 months agoChange how video timing is done.
Carl Hetherington [Thu, 29 Sep 2022 08:17:50 +0000 (10:17 +0200)]
Change how video timing is done.

This commit changes the approach with video timing.  Previously,
we would (more-or-less) try to use every video frame from the content
in the output, hoping that they come at a constant frame rate.

This is not always the case, however.  Here we preserve the PTS
of video frames, and then when one arrives we output whatever
DCP video frames we can (at the regular DCP frame rate).

Hopefully this will solve a range of sync problems, but it
could also introduce new ones.

5 months agoAdd operator* for Time and int.
Carl Hetherington [Wed, 28 Sep 2022 23:03:43 +0000 (01:03 +0200)]
Add operator* for Time and int.

5 months agoWrite player debug logs from tests on -- --log=debug-player
Carl Hetherington [Wed, 28 Sep 2022 21:59:06 +0000 (23:59 +0200)]
Write player debug logs from tests on -- --log=debug-player

5 months agoCleanup: fix name of film to match test.
Carl Hetherington [Sun, 2 Oct 2022 19:55:55 +0000 (21:55 +0200)]
Cleanup: fix name of film to match test.

5 months agoFix FFmpegExaminer termination condition when there is no video;
Carl Hetherington [Sat, 1 Oct 2022 10:05:33 +0000 (12:05 +0200)]
Fix FFmpegExaminer termination condition when there is no video;
it's hard to see how this ever worked.

5 months agoBump ffmpeg to 5.1.2 "Riemann"
Carl Hetherington [Fri, 30 Sep 2022 20:46:33 +0000 (22:46 +0200)]
Bump ffmpeg to 5.1.2 "Riemann"

5 months agoNormalise XML attribute names to be camelCase (#2241).
Carl Hetherington [Sat, 10 Sep 2022 22:10:22 +0000 (00:10 +0200)]
Normalise XML attribute names to be camelCase (#2241).

5 months agoUse 2.18.x subdirectory for configuration.
Carl Hetherington [Mon, 26 Sep 2022 18:20:16 +0000 (20:20 +0200)]
Use 2.18.x subdirectory for configuration.

5 months agoRun premultiply filter on still images that have alpha channels (more of #2681).
Carl Hetherington [Sun, 10 Dec 2023 20:53:38 +0000 (21:53 +0100)]
Run premultiply filter on still images that have alpha channels (more of #2681).

5 months agoCleanup: const.
Carl Hetherington [Sun, 10 Dec 2023 20:52:45 +0000 (21:52 +0100)]
Cleanup: const.

5 months agoPrevent crash if you forget to call FilterGraph::setup().
Carl Hetherington [Sun, 10 Dec 2023 20:52:41 +0000 (21:52 +0100)]
Prevent crash if you forget to call FilterGraph::setup().

5 months agoAdd a premultiply filter to sources with an alpha channel (#2681).
Carl Hetherington [Sun, 10 Dec 2023 15:20:51 +0000 (16:20 +0100)]
Add a premultiply filter to sources with an alpha channel (#2681).

5 months agoAdd FFmpegExaminer::has_alpha().
Carl Hetherington [Sun, 10 Dec 2023 15:20:20 +0000 (16:20 +0100)]
Add FFmpegExaminer::has_alpha().

5 months agoCleanup: use a lambda.
Carl Hetherington [Sun, 10 Dec 2023 15:20:02 +0000 (16:20 +0100)]
Cleanup: use a lambda.

5 months agoCleanup: use some better variable names.
Carl Hetherington [Sat, 9 Dec 2023 19:33:02 +0000 (20:33 +0100)]
Cleanup: use some better variable names.

5 months agoDon't scan content if we don't need to (#2661).
Carl Hetherington [Fri, 8 Dec 2023 15:45:55 +0000 (16:45 +0100)]
Don't scan content if we don't need to (#2661).

5 months agoExtract scan_content().
Carl Hetherington [Fri, 8 Dec 2023 15:00:49 +0000 (16:00 +0100)]
Extract scan_content().

5 months agoSupport YUV422P9LE in alpha_blend() (#2671). notar1
Carl Hetherington [Mon, 27 Nov 2023 23:33:22 +0000 (00:33 +0100)]
Support YUV422P9LE in alpha_blend() (#2671).

5 months agoSupporters update. v2.16.70
Carl Hetherington [Fri, 1 Dec 2023 23:40:10 +0000 (00:40 +0100)]
Supporters update.

5 months agoBump libdcp for another MCA channel ID fix.
Carl Hetherington [Fri, 1 Dec 2023 23:39:14 +0000 (00:39 +0100)]
Bump libdcp for another MCA channel ID fix.

5 months agoSupport RtAudio >= 6.
Carl Hetherington [Thu, 30 Nov 2023 21:15:46 +0000 (22:15 +0100)]
Support RtAudio >= 6.

There's an API break, mostly about removing the use of exceptions.

5 months agoAllow 14 or 16 channels with ATMOS content, rather than forcing 14 (#2672).
Carl Hetherington [Wed, 29 Nov 2023 01:27:50 +0000 (02:27 +0100)]
Allow 14 or 16 channels with ATMOS content, rather than forcing 14 (#2672).

5 months agoDon't reduce the audio channel count on adding ATMOS (only increase it, if required).
Carl Hetherington [Wed, 29 Nov 2023 01:26:07 +0000 (02:26 +0100)]
Don't reduce the audio channel count on adding ATMOS (only increase it, if required).

5 months agoFix segfault when creating KDMs with certificates and project folders (not DKDMs).
Carl Hetherington [Wed, 29 Nov 2023 21:50:34 +0000 (22:50 +0100)]
Fix segfault when creating KDMs with certificates and project folders (not DKDMs).

5 months agoAdd Дима Агатов as a tester.
Carl Hetherington [Mon, 27 Nov 2023 09:34:04 +0000 (10:34 +0100)]
Add Дима Агатов as a tester.

5 months agoSupporters update. v2.16.69
Carl Hetherington [Sun, 26 Nov 2023 23:56:28 +0000 (00:56 +0100)]
Supporters update.

5 months agoUninstall encode server link.
Carl Hetherington [Sat, 25 Nov 2023 23:40:12 +0000 (00:40 +0100)]
Uninstall encode server link.

5 months agoAdd missing file=f so that all desktop shortcuts are uninstalled.
Carl Hetherington [Sat, 25 Nov 2023 23:06:46 +0000 (00:06 +0100)]
Add missing file=f so that all desktop shortcuts are uninstalled.

5 months agoSet shell var context so that when uninstalling we look in the same place for shortcu...
Carl Hetherington [Sat, 25 Nov 2023 21:14:56 +0000 (22:14 +0100)]
Set shell var context so that when uninstalling we look in the same place for shortcuts as when installing.

5 months agoCleanup: add start_menu_shortcut().
Carl Hetherington [Sat, 25 Nov 2023 21:13:39 +0000 (22:13 +0100)]
Cleanup: add start_menu_shortcut().

5 months agoExtract some common parts of the uninstaller.
Carl Hetherington [Sat, 25 Nov 2023 21:05:24 +0000 (22:05 +0100)]
Extract some common parts of the uninstaller.

5 months agoCleanup: remove unnecessary include.
Carl Hetherington [Sat, 25 Nov 2023 20:08:39 +0000 (21:08 +0100)]
Cleanup: remove unnecessary include.

5 months agoCall dcpomatic_setup_path_encoding() early enough (#2665).
Carl Hetherington [Sat, 25 Nov 2023 20:07:50 +0000 (21:07 +0100)]
Call dcpomatic_setup_path_encoding() early enough (#2665).

On Windows this was previously called after we instantiated a Config
object to get win32_console(), meaning that the required path voodoo
was not active when looking for the config.  This caused problems
if the user has a non-ASCII user name.

5 months agoDon't hide errors when trying to make configuration directories.
Carl Hetherington [Sat, 25 Nov 2023 20:06:18 +0000 (21:06 +0100)]
Don't hide errors when trying to make configuration directories.

There should be no error if the directories already exist, and otherwise
I think we want to know about the error.

5 months agoFix installer with non-ASCII user names (#2668).
Carl Hetherington [Sat, 25 Nov 2023 12:34:02 +0000 (13:34 +0100)]
Fix installer with non-ASCII user names (#2668).

5 months agoFix stray \r characters in output of ls_url on Windows (#2669).
Carl Hetherington [Sun, 26 Nov 2023 21:05:48 +0000 (22:05 +0100)]
Fix stray \r characters in output of ls_url on Windows (#2669).

5 months agoFix typo in path.
Carl Hetherington [Sun, 26 Nov 2023 20:23:25 +0000 (21:23 +0100)]
Fix typo in path.

5 months agoDon't crash if preferences ZIP needs to be overwritten during export.
Carl Hetherington [Sun, 26 Nov 2023 20:05:20 +0000 (21:05 +0100)]
Don't crash if preferences ZIP needs to be overwritten during export.

5 months agoRemove assumption that GDC serials always start with 'A' (apparently there are other...
Carl Hetherington [Sat, 25 Nov 2023 10:49:39 +0000 (11:49 +0100)]
Remove assumption that GDC serials always start with 'A' (apparently there are other prefixes too).

5 months agoMake an error more detailed.
Carl Hetherington [Sun, 26 Nov 2023 00:05:41 +0000 (01:05 +0100)]
Make an error more detailed.

5 months agoFix libzip config checks. v2.16.68
Carl Hetherington [Fri, 24 Nov 2023 21:58:24 +0000 (22:58 +0100)]
Fix libzip config checks.

5 months agoFix debug assertion when adding a KDM.
Carl Hetherington [Fri, 24 Nov 2023 10:31:22 +0000 (11:31 +0100)]
Fix debug assertion when adding a KDM.

5 months agoUpdated zh_CN translation from 刘汉源
Carl Hetherington [Thu, 23 Nov 2023 22:24:59 +0000 (23:24 +0100)]
Updated zh_CN translation from 刘汉源

6 months agoUpdate servers list after connecting to the signal.
Carl Hetherington [Thu, 23 Nov 2023 00:23:37 +0000 (01:23 +0100)]
Update servers list after connecting to the signal.

Otherwise it can happen that a signal is emitted before we connect
to it, and then after that no more signals come because nothing
changes.

6 months agoClarify error messages about missing configuration.
Carl Hetherington [Thu, 23 Nov 2023 00:23:20 +0000 (01:23 +0100)]
Clarify error messages about missing configuration.

6 months agoFix Centos 7 build.
Carl Hetherington [Tue, 21 Nov 2023 19:20:04 +0000 (20:20 +0100)]
Fix Centos 7 build.

6 months agoAnother Winodws build fix. v2.16.67
Carl Hetherington [Tue, 21 Nov 2023 08:24:51 +0000 (09:24 +0100)]
Another Winodws build fix.

6 months agoMissing header for Windows build.
Carl Hetherington [Mon, 20 Nov 2023 23:31:02 +0000 (00:31 +0100)]
Missing header for Windows build.

6 months agoCleanup: whitespace and header sorting.
Carl Hetherington [Mon, 20 Nov 2023 23:22:36 +0000 (00:22 +0100)]
Cleanup: whitespace and header sorting.

6 months agoFix class/struct confusion causing build error on macOS.
Carl Hetherington [Mon, 20 Nov 2023 22:59:26 +0000 (23:59 +0100)]
Fix class/struct confusion causing build error on macOS.

6 months agoVerify encrypted DCPs (more) correctly (#2659).
Carl Hetherington [Sun, 19 Nov 2023 23:25:27 +0000 (00:25 +0100)]
Verify encrypted DCPs (more) correctly (#2659).

6 months agoCleanup: use stack-allocated FileDialog and accept multiple KDMs.
Carl Hetherington [Sun, 19 Nov 2023 23:20:44 +0000 (00:20 +0100)]
Cleanup: use stack-allocated FileDialog and accept multiple KDMs.

6 months agoCleanup: use ScopeGuard.
Carl Hetherington [Sun, 19 Nov 2023 23:14:32 +0000 (00:14 +0100)]
Cleanup: use ScopeGuard.

6 months agoFix build.
Carl Hetherington [Mon, 20 Nov 2023 14:37:23 +0000 (15:37 +0100)]
Fix build.

6 months agoFix audio analysis attempts with source files that have more channels than the film.
Carl Hetherington [Wed, 15 Nov 2023 16:02:16 +0000 (17:02 +0100)]
Fix audio analysis attempts with source files that have more channels than the film.

6 months agoCleanup: handle Filter objects by value rather than by reference.
Carl Hetherington [Tue, 7 Nov 2023 23:59:42 +0000 (00:59 +0100)]
Cleanup: handle Filter objects by value rather than by reference.

6 months agoCleanup: remove an unnecessary shared_ptr.
Carl Hetherington [Tue, 7 Nov 2023 23:24:20 +0000 (00:24 +0100)]
Cleanup: remove an unnecessary shared_ptr.

6 months agoAdd header guards.
Carl Hetherington [Tue, 7 Nov 2023 23:24:11 +0000 (00:24 +0100)]
Add header guards.

6 months agoDon't feed channels to leqm that we don't have a correction factor for (#2647).
Carl Hetherington [Tue, 7 Nov 2023 23:18:22 +0000 (00:18 +0100)]
Don't feed channels to leqm that we don't have a correction factor for (#2647).

6 months agoAdd a dialog to show which screens have potentially-problematic
Carl Hetherington [Sun, 19 Nov 2023 20:34:56 +0000 (21:34 +0100)]
Add a dialog to show which screens have potentially-problematic
certificate validity periods when making KDMs (#2645).

6 months agoFix "create KDM" button sensitivity with invalid KDM time range.
Carl Hetherington [Sun, 19 Nov 2023 20:34:27 +0000 (21:34 +0100)]
Fix "create KDM" button sensitivity with invalid KDM time range.

6 months agoCleanup: header ordering.
Carl Hetherington [Sun, 19 Nov 2023 20:33:11 +0000 (21:33 +0100)]
Cleanup: header ordering.

6 months agoImprove progress reporting of digest calculations (might help with #2643).
Carl Hetherington [Sun, 12 Nov 2023 21:09:48 +0000 (22:09 +0100)]
Improve progress reporting of digest calculations (might help with #2643).

6 months agoSupporters update.
Carl Hetherington [Sun, 19 Nov 2023 21:40:40 +0000 (22:40 +0100)]
Supporters update.

6 months agoFix out-of-bounds read in OSX disk checking (#2658).
Carl Hetherington [Sun, 19 Nov 2023 20:07:25 +0000 (21:07 +0100)]
Fix out-of-bounds read in OSX disk checking (#2658).

6 months agoAlways add a font with an empty ID (#2649).
Carl Hetherington [Fri, 10 Nov 2023 22:51:46 +0000 (23:51 +0100)]
Always add a font with an empty ID (#2649).

It's not just subtitle files with no <LoadFont> that can have
subtitles without a specified font.  In particular, DoM makes a
single space subtitle with no font spec when it creates filler
subtitles in multi-reel DCPs.

6 months agoPass through <Ruby> tags in subtitles (#2635) (GH#23).
Carl Hetherington [Wed, 15 Nov 2023 22:07:42 +0000 (23:07 +0100)]
Pass through <Ruby> tags in subtitles (#2635) (GH#23).

6 months agoFix crash with subtitles for which we have no codec.
Carl Hetherington [Thu, 16 Nov 2023 14:14:16 +0000 (15:14 +0100)]
Fix crash with subtitles for which we have no codec.

6 months agoCopy Interop PNG subtitle files correctly (#2640).
Carl Hetherington [Sun, 12 Nov 2023 23:30:48 +0000 (00:30 +0100)]
Copy Interop PNG subtitle files correctly (#2640).

6 months agoExtract copy().
Carl Hetherington [Wed, 15 Nov 2023 00:48:29 +0000 (01:48 +0100)]
Extract copy().

6 months agoReplace deprecated zip_add() with zip_file_add().
Carl Hetherington [Sat, 11 Nov 2023 00:59:22 +0000 (01:59 +0100)]
Replace deprecated zip_add() with zip_file_add().

6 months agoReplace deprecated leaf() with filename().
Carl Hetherington [Sat, 11 Nov 2023 00:31:58 +0000 (01:31 +0100)]
Replace deprecated leaf() with filename().

6 months agoMove a IMB location to try_imb() and add a new IMS pattern (#2644).
Carl Hetherington [Sat, 11 Nov 2023 22:45:37 +0000 (23:45 +0100)]
Move a IMB location to try_imb() and add a new IMS pattern (#2644).

6 months agoStore last path for adding KDMs (#2348).
Carl Hetherington [Sat, 11 Nov 2023 21:55:27 +0000 (22:55 +0100)]
Store last path for adding KDMs (#2348).

6 months agoAdd FileDialog::path().
Carl Hetherington [Sat, 11 Nov 2023 21:54:51 +0000 (22:54 +0100)]
Add FileDialog::path().

6 months agoCleanup: stack-allocated dialogs.
Carl Hetherington [Sat, 11 Nov 2023 21:19:37 +0000 (22:19 +0100)]
Cleanup: stack-allocated dialogs.

6 months agoUse DirDialog and fix initial path (#2348).
Carl Hetherington [Sat, 11 Nov 2023 20:07:54 +0000 (21:07 +0100)]
Use DirDialog and fix initial path (#2348).

6 months agoMove add_files_override_path to film_util
Carl Hetherington [Sat, 11 Nov 2023 20:03:39 +0000 (21:03 +0100)]
Move add_files_override_path to film_util

6 months agoAdd comment.
Carl Hetherington [Sat, 11 Nov 2023 20:03:16 +0000 (21:03 +0100)]
Add comment.

6 months agoCleanup: stack-allocated dialogs.
Carl Hetherington [Sat, 11 Nov 2023 19:37:42 +0000 (20:37 +0100)]
Cleanup: stack-allocated dialogs.

6 months agoCleanup: auto.
Carl Hetherington [Sat, 11 Nov 2023 19:37:35 +0000 (20:37 +0100)]
Cleanup: auto.

6 months agoAdd check before dereferencing pointer.
Carl Hetherington [Sat, 28 Oct 2023 21:16:41 +0000 (23:16 +0200)]
Add check before dereferencing pointer.

6 months agoFix uninitialised variable.
Carl Hetherington [Sat, 28 Oct 2023 21:16:32 +0000 (23:16 +0200)]
Fix uninitialised variable.

6 months agoAdd some std::move.
Carl Hetherington [Sat, 28 Oct 2023 21:04:36 +0000 (23:04 +0200)]
Add some std::move.

6 months agoAdd some const& to uses of auto.
Carl Hetherington [Sat, 28 Oct 2023 21:04:26 +0000 (23:04 +0200)]
Add some const& to uses of auto.

6 months agoFix some possible overflows.
Carl Hetherington [Sat, 28 Oct 2023 21:04:15 +0000 (23:04 +0200)]
Fix some possible overflows.

6 months agoFix a bizarre thinko / typo of "false" for false.
Carl Hetherington [Sat, 28 Oct 2023 21:04:04 +0000 (23:04 +0200)]
Fix a bizarre thinko / typo of "false" for false.

6 months agoMake sure a dynamic_pointer_cast worked.
Carl Hetherington [Sat, 28 Oct 2023 21:03:38 +0000 (23:03 +0200)]
Make sure a dynamic_pointer_cast worked.

6 months agoCheck some unsanitized network inputs before allocating memory using them.
Carl Hetherington [Sat, 28 Oct 2023 21:03:24 +0000 (23:03 +0200)]
Check some unsanitized network inputs before allocating memory using them.

6 months agoFix theoretical int overflow.
Carl Hetherington [Sat, 28 Oct 2023 21:02:54 +0000 (23:02 +0200)]
Fix theoretical int overflow.

6 months agoAdd some missing locks.
Carl Hetherington [Sat, 28 Oct 2023 21:02:40 +0000 (23:02 +0200)]
Add some missing locks.

6 months agoCleanup: whitespace.
Carl Hetherington [Sat, 28 Oct 2023 21:02:17 +0000 (23:02 +0200)]
Cleanup: whitespace.

6 months agoFix thinko when trying to keep channel counts even.
Carl Hetherington [Sat, 28 Oct 2023 21:02:09 +0000 (23:02 +0200)]
Fix thinko when trying to keep channel counts even.

6 months agoFix possible deference of invalid iterator (if _reel == _reels.end()).
Carl Hetherington [Sat, 28 Oct 2023 20:31:38 +0000 (22:31 +0200)]
Fix possible deference of invalid iterator (if _reel == _reels.end()).

6 months agoFix possible dereference of invalid iterator (if have_pushed is empty).
Carl Hetherington [Sat, 28 Oct 2023 20:28:14 +0000 (22:28 +0200)]
Fix possible dereference of invalid iterator (if have_pushed is empty).

6 months agoTolerate DCPs with no video and/or audio.
Carl Hetherington [Sat, 28 Oct 2023 19:48:26 +0000 (21:48 +0200)]
Tolerate DCPs with no video and/or audio.

6 months agoUse updated libdcp, including an optimisation for rgb-onto-xyz12.
Carl Hetherington [Fri, 27 Oct 2023 23:51:51 +0000 (01:51 +0200)]
Use updated libdcp, including an optimisation for rgb-onto-xyz12.

7 months agoFix transcode job fps logging.
Carl Hetherington [Wed, 18 Oct 2023 22:10:58 +0000 (00:10 +0200)]
Fix transcode job fps logging.

Broken in d3455851f60ee6bc35ea4f314c62a7da51ce0d81

7 months agoAdd button to show only checked screens in the KDM creator (#2624).
Carl Hetherington [Tue, 17 Oct 2023 22:44:30 +0000 (00:44 +0200)]
Add button to show only checked screens in the KDM creator (#2624).