dcpomatic.git
4 months agoTry to size viewer. debug-dual-screen
Carl Hetherington [Tue, 19 Dec 2023 21:17:03 +0000 (22:17 +0100)]
Try to size viewer.

4 months agoMaybe fix dual-screen window positioning.
Carl Hetherington [Tue, 19 Dec 2023 20:24:00 +0000 (21:24 +0100)]
Maybe fix dual-screen window positioning.

4 months agoDebugging.
Carl Hetherington [Tue, 19 Dec 2023 19:31:08 +0000 (20:31 +0100)]
Debugging.

4 months agoFix time parsing in KDM CLI to be a bit more lenient.
Carl Hetherington [Sat, 16 Dec 2023 19:19:18 +0000 (20:19 +0100)]
Fix time parsing in KDM CLI to be a bit more lenient.

4 months agotest/data update.
Carl Hetherington [Sat, 16 Dec 2023 10:46:33 +0000 (11:46 +0100)]
test/data update.

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

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

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

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

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

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

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

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

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

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

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

4 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().

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

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

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

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

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

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

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

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

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

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

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

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

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

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

4 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

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

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

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

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

4 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

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

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

4 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().

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

4 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()

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

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

4 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

4 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

4 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".

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

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

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

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

4 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

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

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

4 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"

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

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

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

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

4 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().

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

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

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

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

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

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

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

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

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

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

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

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

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