dcpomatic.git
5 months agoFix crash when there is no LD_LIBRARY_PATH v2.17.9
Carl Hetherington [Wed, 22 Nov 2023 23:47:57 +0000 (00:47 +0100)]
Fix crash when there is no LD_LIBRARY_PATH

5 months agoSetup grok LD_LIBRARY_PATH when required (#2657).
Carl Hetherington [Wed, 22 Nov 2023 23:04:57 +0000 (00:04 +0100)]
Setup grok LD_LIBRARY_PATH when required (#2657).

5 months agoCleanup: whitespace.
Carl Hetherington [Wed, 22 Nov 2023 23:04:33 +0000 (00:04 +0100)]
Cleanup: whitespace.

5 months agoAdd method to setup LD_LIBRARY_PATH for grok.
Carl Hetherington [Wed, 22 Nov 2023 23:04:18 +0000 (00:04 +0100)]
Add method to setup LD_LIBRARY_PATH for grok.

5 months agoGive GROK its own config changed category.
Carl Hetherington [Wed, 22 Nov 2023 23:04:04 +0000 (00:04 +0100)]
Give GROK its own config changed category.

5 months agoSet CUDA_MODULE_LOADING=EAGER for grok (#2638).
Carl Hetherington [Wed, 22 Nov 2023 08:24:03 +0000 (09:24 +0100)]
Set CUDA_MODULE_LOADING=EAGER for grok (#2638).

5 months agoRemove reference checkboxes from video/audio/text tabs.
Carl Hetherington [Sun, 14 May 2023 22:03:44 +0000 (00:03 +0200)]
Remove reference checkboxes from video/audio/text tabs.

5 months agoAdd Version File dialog.
Carl Hetherington [Sun, 14 May 2023 21:42:27 +0000 (23:42 +0200)]
Add Version File dialog.

5 months agoAdd set().
Carl Hetherington [Sun, 14 May 2023 21:42:11 +0000 (23:42 +0200)]
Add set().

5 months agoMake can_reference_anything public.
Carl Hetherington [Sun, 14 May 2023 21:08:37 +0000 (23:08 +0200)]
Make can_reference_anything public.

5 months agoRename can_reference -> can_reference_anything.
Carl Hetherington [Sun, 14 May 2023 21:04:32 +0000 (23:04 +0200)]
Rename can_reference -> can_reference_anything.

5 months agoCleanup: rearrange how overlap checking is done in can_reference().
Carl Hetherington [Sun, 14 May 2023 21:01:34 +0000 (23:01 +0200)]
Cleanup: rearrange how overlap checking is done in can_reference().

5 months agoPut overlaps() into the dcpomatic namespace.
Carl Hetherington [Sun, 14 May 2023 21:01:06 +0000 (23:01 +0200)]
Put overlaps() into the dcpomatic namespace.

5 months agoFix missing grok log setup in dcpomatic_cli.
Carl Hetherington [Wed, 18 Oct 2023 20:59:30 +0000 (22:59 +0200)]
Fix missing grok log setup in dcpomatic_cli.

5 months agoSwap a log for a more informative one.
Carl Hetherington [Wed, 18 Oct 2023 20:59:19 +0000 (22:59 +0200)]
Swap a log for a more informative one.

5 months agoMake stop() private and use drop() instead.
Carl Hetherington [Sun, 8 Oct 2023 13:48:58 +0000 (15:48 +0200)]
Make stop() private and use drop() instead.

This avoids confusing situations where we call stop(), then try
to restart the finder (unsuccessfully, because once it's stop()ped
it will stay around, never to be restarted).

5 months agoClean up grok's presence in the config file and make sure it's optional.
Carl Hetherington [Fri, 6 Oct 2023 20:42:44 +0000 (22:42 +0200)]
Clean up grok's presence in the config file and make sure it's optional.

It should be allowed to not have any grok stuff in the config file,
and we should generally call it grok rather than GPU in case
other non-grok GPU stuff arrives in the future.

5 months agoRemove a directory created by the config machinery to avoid confusion.
Carl Hetherington [Fri, 6 Oct 2023 20:42:15 +0000 (22:42 +0200)]
Remove a directory created by the config machinery to avoid confusion.

5 months agoAdd another manual dependency.
Carl Hetherington [Fri, 6 Oct 2023 19:38:50 +0000 (21:38 +0200)]
Add another manual dependency.

5 months agoCleanup: whitespace / coding style.
Carl Hetherington [Fri, 6 Oct 2023 19:27:39 +0000 (21:27 +0200)]
Cleanup: whitespace / coding style.

5 months agoCleanup: whitespace to reduce the diff.
Carl Hetherington [Wed, 4 Oct 2023 17:51:54 +0000 (19:51 +0200)]
Cleanup: whitespace to reduce the diff.

5 months agoCleanup: include ordering.
Carl Hetherington [Wed, 4 Oct 2023 17:51:45 +0000 (19:51 +0200)]
Cleanup: include ordering.

5 months agoDon't pollute the global namespace with a namespace called fs.
Carl Hetherington [Wed, 4 Oct 2023 17:47:32 +0000 (19:47 +0200)]
Don't pollute the global namespace with a namespace called fs.

5 months agoAnother patch from Aaron.
Carl Hetherington [Wed, 4 Oct 2023 17:11:45 +0000 (19:11 +0200)]
Another patch from Aaron.

5 months agoLog failure to schedule a frame with grok.
Carl Hetherington [Wed, 4 Oct 2023 13:36:55 +0000 (15:36 +0200)]
Log failure to schedule a frame with grok.

5 months agoCleanup: coding style.
Carl Hetherington [Tue, 26 Sep 2023 18:59:39 +0000 (20:59 +0200)]
Cleanup: coding style.

5 months agoLooks like we also need an explicit dep on messenger.h
Carl Hetherington [Tue, 26 Sep 2023 18:56:19 +0000 (20:56 +0200)]
Looks like we also need an explicit dep on messenger.h

5 months agoCleanup: coding style.
Carl Hetherington [Tue, 26 Sep 2023 18:53:43 +0000 (20:53 +0200)]
Cleanup: coding style.

5 months agoHack to make sure the right things are rebuilt when grok headers change.
Carl Hetherington [Tue, 26 Sep 2023 18:46:08 +0000 (20:46 +0200)]
Hack to make sure the right things are rebuilt when grok headers change.

5 months agoForward-declare grk_plugin stuff.
Carl Hetherington [Tue, 26 Sep 2023 11:32:00 +0000 (13:32 +0200)]
Forward-declare grk_plugin stuff.

5 months agoCreate a single DcpomaticContext for all GrokContexts, rather than copying them.
Carl Hetherington [Tue, 26 Sep 2023 11:29:59 +0000 (13:29 +0200)]
Create a single DcpomaticContext for all GrokContexts, rather than copying them.

I think this makes sense, and also allows us to forward-declare the
contexts in a forthcoming commit.

5 months agoCleanup: reformat and rename dcpomaticContext_ -> _dcpomatic_context
Carl Hetherington [Tue, 26 Sep 2023 11:11:36 +0000 (13:11 +0200)]
Cleanup: reformat and rename dcpomaticContext_ -> _dcpomatic_context

5 months agoCleanup: sorting.
Carl Hetherington [Tue, 26 Sep 2023 11:00:16 +0000 (13:00 +0200)]
Cleanup: sorting.

5 months agoUse GPU not Gpu for config element names.
Carl Hetherington [Sun, 24 Sep 2023 15:26:31 +0000 (17:26 +0200)]
Use GPU not Gpu for config element names.

5 months agoUse boost::filesystem::path for gpu_binary_location().
Carl Hetherington [Sun, 24 Sep 2023 15:23:57 +0000 (17:23 +0200)]
Use boost::filesystem::path for gpu_binary_location().

5 months agoCleanup: use dcp::ArrayData instead of home-grown version.
Carl Hetherington [Sun, 24 Sep 2023 15:04:34 +0000 (17:04 +0200)]
Cleanup: use dcp::ArrayData instead of home-grown version.

5 months agoCleanup: remove unnecessary forward declaration.
Carl Hetherington [Sun, 24 Sep 2023 15:04:21 +0000 (17:04 +0200)]
Cleanup: remove unnecessary forward declaration.

5 months agoAdd missing copyright banner.
Carl Hetherington [Sun, 24 Sep 2023 14:54:11 +0000 (16:54 +0200)]
Add missing copyright banner.

5 months agoRemove C++17-ism.
Carl Hetherington [Sun, 24 Sep 2023 14:44:27 +0000 (16:44 +0200)]
Remove C++17-ism.

5 months agoCopy-edit GUI strings.
Carl Hetherington [Sun, 24 Sep 2023 14:41:57 +0000 (16:41 +0200)]
Copy-edit GUI strings.

5 months agoCheck for errors when calling the GPU lister.
Carl Hetherington [Sun, 24 Sep 2023 14:39:27 +0000 (16:39 +0200)]
Check for errors when calling the GPU lister.

5 months agoHide compiler warning.
Carl Hetherington [Sun, 24 Sep 2023 11:13:40 +0000 (13:13 +0200)]
Hide compiler warning.

In file included from ../src/lib/grok/context.h:29,
                 from ../src/lib/j2k_encoder.h:36,
                 from ../src/lib/grok_j2k_encoder_thread.cc:5:
In member function ‘void grk_plugin::Synch::unlink()’,
    inlined from ‘grk_plugin::Synch::Synch(const string&, const string&)’ at ../src/lib/grok/messenger.h:200:10:
../src/lib/grok/messenger.h:247:52: error: ‘this’ pointer is null [-Werror=nonnull]
  247 |                         getMessengerLogger()->error("Error unlinking semaphore %s: %s", sentSemName_.c_str(),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  248 |                                                                                 strerror(errno));

on Ubuntu 22.04.

5 months agoOnly build grok for Ubuntu 22.04.
Carl Hetherington [Sun, 24 Sep 2023 10:09:16 +0000 (12:09 +0200)]
Only build grok for Ubuntu 22.04.

5 months agoExplicitly set up Grok logger rather than relying on a static variable.
Carl Hetherington [Sun, 24 Sep 2023 10:02:19 +0000 (12:02 +0200)]
Explicitly set up Grok logger rather than relying on a static variable.

5 months agoRemove unnecessary using statements.
Carl Hetherington [Sun, 24 Sep 2023 10:01:54 +0000 (12:01 +0200)]
Remove unnecessary using statements.

5 months agoRearrange encoder threading.
Carl Hetherington [Sat, 23 Sep 2023 22:34:15 +0000 (00:34 +0200)]
Rearrange encoder threading.

Soon we'll add a new encoder type, and the existing structure was
already creaking a bit at the seams while handling local and remote
encodes.  Here we split out an encoder thread and introduce the concept
of a "sync" thread (which blocks while the encoding is happening).
Later we'll have another type which submits the encode request to a
GPU and receives the reply back later.

5 months agoRemove check for _threads being null, as I think it should not happen.
Carl Hetherington [Sun, 10 Sep 2023 21:46:19 +0000 (23:46 +0200)]
Remove check for _threads being null, as I think it should not happen.

5 months agoCleanup: white space.
Carl Hetherington [Sun, 10 Sep 2023 21:45:56 +0000 (23:45 +0200)]
Cleanup: white space.

5 months agoFurther patch from Aaron.
Carl Hetherington [Sun, 3 Sep 2023 22:58:19 +0000 (00:58 +0200)]
Further patch from Aaron.

5 months agoTidy up some includes / forward declarations.
Carl Hetherington [Sun, 9 Jul 2023 21:25:36 +0000 (23:25 +0200)]
Tidy up some includes / forward declarations.

5 months agoCleanup: white space tidying.
Carl Hetherington [Sun, 9 Jul 2023 21:22:20 +0000 (23:22 +0200)]
Cleanup: white space tidying.

5 months agoChange end() to only do one thing, and copy the required stuff into pause()
Carl Hetherington [Sun, 9 Jul 2023 21:18:40 +0000 (23:18 +0200)]
Change end() to only do one thing, and copy the required stuff into pause()

5 months agoRemove default constructor from DCPVideo.
Carl Hetherington [Fri, 7 Jul 2023 23:13:04 +0000 (01:13 +0200)]
Remove default constructor from DCPVideo.

5 months agoFormatting, variable name tidying and some const correctness.
Carl Hetherington [Fri, 7 Jul 2023 22:20:15 +0000 (00:20 +0200)]
Formatting, variable name tidying and some const correctness.

5 months agoMove grok headers into src/wx/grok
Carl Hetherington [Fri, 7 Jul 2023 21:42:08 +0000 (23:42 +0200)]
Move grok headers into src/wx/grok

5 months agoMove grok headers into src/lib/grok
Carl Hetherington [Fri, 7 Jul 2023 21:24:45 +0000 (23:24 +0200)]
Move grok headers into src/lib/grok

5 months agoPatch from Aaron Boxer adding initial support for GPU-powered J2K encoding via his...
Carl Hetherington [Thu, 6 Jul 2023 21:09:08 +0000 (23:09 +0200)]
Patch from Aaron Boxer adding initial support for GPU-powered J2K encoding via his tool "grok".

5 months agoBump ffmpeg to get some fixes that were on dcpomatic-14 but not dcpomatic-16.
Carl Hetherington [Fri, 15 Sep 2023 15:20:22 +0000 (17:20 +0200)]
Bump ffmpeg to get some fixes that were on dcpomatic-14 but not dcpomatic-16.

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 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 刘汉源

5 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.

5 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.

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

5 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.

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

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

5 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.

5 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).

5 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.

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

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

5 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.

5 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.

5 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.

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