dcpomatic.git
3 months agoBump FFmpeg to 6.1. v2.17.10
Carl Hetherington [Thu, 25 Jan 2024 19:15:27 +0000 (20:15 +0100)]
Bump FFmpeg to 6.1.

3 months agoDump addr2line command before running it.
Carl Hetherington [Fri, 26 Jan 2024 08:50:14 +0000 (09:50 +0100)]
Dump addr2line command before running it.

3 months agoUse v2.17.x's mxe dependencies when running tests.
Carl Hetherington [Tue, 23 Jan 2024 23:04:31 +0000 (00:04 +0100)]
Use v2.17.x's mxe dependencies when running tests.

3 months agoRemove unused variables.
Carl Hetherington [Mon, 22 Jan 2024 09:14:28 +0000 (10:14 +0100)]
Remove unused variables.

3 months agoUpdate for new wxWidgets version on macOS.
Carl Hetherington [Sun, 21 Jan 2024 12:02:37 +0000 (13:02 +0100)]
Update for new wxWidgets version on macOS.

3 months agoUpdate for new mxe.
Carl Hetherington [Sat, 20 Jan 2024 01:57:30 +0000 (02:57 +0100)]
Update for new mxe.

3 months agoMove audio language setting to DCP audio tab (#2682).
Carl Hetherington [Wed, 3 Jan 2024 00:58:11 +0000 (01:58 +0100)]
Move audio language setting to DCP audio tab (#2682).

3 months agoRemember whether Content or DCP is selected in a new ui.xml state file.
Carl Hetherington [Fri, 22 Dec 2023 16:02:43 +0000 (17:02 +0100)]
Remember whether Content or DCP is selected in a new ui.xml state file.

3 months agoCleanup: forward declaration sorting.
Carl Hetherington [Fri, 22 Dec 2023 16:01:09 +0000 (17:01 +0100)]
Cleanup: forward declaration sorting.

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

3 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

3 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

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

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

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

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

3 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

3 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

3 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

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

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

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

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

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

3 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

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

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

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

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

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

3 months agoSupporters update. v2.16.73
Carl Hetherington [Sat, 27 Jan 2024 23:30:00 +0000 (00:30 +0100)]
Supporters update.

3 months agoFix assertion on trying to select a file (#2737).
Carl Hetherington [Fri, 26 Jan 2024 22:46:57 +0000 (23:46 +0100)]
Fix assertion on trying to select a file (#2737).

3 months agoAdd supporters. v2.16.72
Carl Hetherington [Tue, 23 Jan 2024 20:04:41 +0000 (21:04 +0100)]
Add supporters.

3 months agoRemove unused variables.
Carl Hetherington [Sun, 21 Jan 2024 01:23:58 +0000 (02:23 +0100)]
Remove unused variables.

3 months agoExplicitly link zlib to keep new macOS environment happy.
Carl Hetherington [Sat, 20 Jan 2024 15:50:38 +0000 (16:50 +0100)]
Explicitly link zlib to keep new macOS environment happy.

3 months agoBuild fix for HAVE_AVSUBTITLERECT_PICT case.
Carl Hetherington [Sat, 20 Jan 2024 15:20:50 +0000 (16:20 +0100)]
Build fix for HAVE_AVSUBTITLERECT_PICT case.

3 months agoRemove unused variable.
Carl Hetherington [Sat, 20 Jan 2024 14:50:33 +0000 (15:50 +0100)]
Remove unused variable.

3 months agomacOS build fix.
Carl Hetherington [Thu, 18 Jan 2024 09:05:31 +0000 (10:05 +0100)]
macOS build fix.

3 months agoAllow specification of KDM annotation text (#296).
Carl Hetherington [Wed, 17 Jan 2024 23:58:51 +0000 (00:58 +0100)]
Allow specification of KDM annotation text (#296).

3 months agoTweak layout.
Carl Hetherington [Wed, 17 Jan 2024 23:05:28 +0000 (00:05 +0100)]
Tweak layout.

3 months agoFix ISDCF name when referring to OVs with subs (#2703).
Carl Hetherington [Wed, 17 Jan 2024 22:46:26 +0000 (23:46 +0100)]
Fix ISDCF name when referring to OVs with subs (#2703).

3 months agoMove burnt subtitle checks into ::subtitle_languages().
Carl Hetherington [Wed, 17 Jan 2024 22:41:23 +0000 (23:41 +0100)]
Move burnt subtitle checks into ::subtitle_languages().

3 months agoCleanup: forward declaration sorting.
Carl Hetherington [Wed, 17 Jan 2024 22:34:08 +0000 (23:34 +0100)]
Cleanup: forward declaration sorting.

3 months agoBump libsub for Arch build fix (#2731).
Carl Hetherington [Tue, 16 Jan 2024 21:00:29 +0000 (22:00 +0100)]
Bump libsub for Arch build fix (#2731).

3 months agoRemember some more paths when selecting files (#2728).
Carl Hetherington [Tue, 16 Jan 2024 00:44:49 +0000 (01:44 +0100)]
Remember some more paths when selecting files (#2728).

* export subtitles
* export video
* debug log
* cinema database
* config file

3 months agoCleanup: remove some make_wx<> that aren't needed.
Carl Hetherington [Tue, 16 Jan 2024 20:28:37 +0000 (21:28 +0100)]
Cleanup: remove some make_wx<> that aren't needed.

3 months agoAdd some comments.
Carl Hetherington [Mon, 15 Jan 2024 23:47:39 +0000 (00:47 +0100)]
Add some comments.

3 months agoCleanup: rename some methods in FilePickerCtrl and use boost::filesystem::path more.
Carl Hetherington [Mon, 15 Jan 2024 23:33:05 +0000 (00:33 +0100)]
Cleanup: rename some methods in FilePickerCtrl and use boost::filesystem::path more.

3 months agoMissing include.
Carl Hetherington [Tue, 16 Jan 2024 15:50:23 +0000 (16:50 +0100)]
Missing include.

3 months agoInspect most DCPs made during tests with ClairMeta (#76).
Carl Hetherington [Fri, 12 Jan 2024 14:29:12 +0000 (15:29 +0100)]
Inspect most DCPs made during tests with ClairMeta (#76).

3 months agoInspect most DCPs made during tests with dcp_inspect (#76).
Carl Hetherington [Thu, 11 Jan 2024 15:24:38 +0000 (16:24 +0100)]
Inspect most DCPs made during tests with dcp_inspect (#76).

3 months agoMissing PRIVATE_GIT update from previous.
Carl Hetherington [Mon, 15 Jan 2024 09:25:14 +0000 (10:25 +0100)]
Missing PRIVATE_GIT update from previous.

3 months agoFix handling of empty font IDs and default DCP fonts (#2721) (part of #2722).
Carl Hetherington [Sat, 13 Jan 2024 22:34:35 +0000 (23:34 +0100)]
Fix handling of empty font IDs and default DCP fonts (#2721) (part of #2722).

Previously we used an empty font ID as the default for when a subtitle
has no Font, but in #2721 we saw a DCP with an empty font ID which
raised an assertion (because we'd already added our default font with
the empty ID).

Here we try to fix this (and also make the default font correctly be
that from the first <LoadFont>).

3 months agoIncrease timeout before pulsing the progress bar for a job.
Carl Hetherington [Sun, 14 Jan 2024 23:48:43 +0000 (00:48 +0100)]
Increase timeout before pulsing the progress bar for a job.