Carl Hetherington [Tue, 26 Sep 2023 18:59:39 +0000 (20:59 +0200)]
Cleanup: coding style.
Carl Hetherington [Tue, 26 Sep 2023 18:56:19 +0000 (20:56 +0200)]
Looks like we also need an explicit dep on messenger.h
Carl Hetherington [Tue, 26 Sep 2023 18:53:43 +0000 (20:53 +0200)]
Cleanup: coding style.
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.
Carl Hetherington [Tue, 26 Sep 2023 11:32:00 +0000 (13:32 +0200)]
Forward-declare grk_plugin stuff.
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.
Carl Hetherington [Tue, 26 Sep 2023 11:11:36 +0000 (13:11 +0200)]
Cleanup: reformat and rename dcpomaticContext_ -> _dcpomatic_context
Carl Hetherington [Tue, 26 Sep 2023 11:00:16 +0000 (13:00 +0200)]
Cleanup: sorting.
Carl Hetherington [Sun, 24 Sep 2023 15:26:31 +0000 (17:26 +0200)]
Use GPU not Gpu for config element names.
Carl Hetherington [Sun, 24 Sep 2023 15:23:57 +0000 (17:23 +0200)]
Use boost::filesystem::path for gpu_binary_location().
Carl Hetherington [Sun, 24 Sep 2023 15:04:34 +0000 (17:04 +0200)]
Cleanup: use dcp::ArrayData instead of home-grown version.
Carl Hetherington [Sun, 24 Sep 2023 15:04:21 +0000 (17:04 +0200)]
Cleanup: remove unnecessary forward declaration.
Carl Hetherington [Sun, 24 Sep 2023 14:54:11 +0000 (16:54 +0200)]
Add missing copyright banner.
Carl Hetherington [Sun, 24 Sep 2023 14:44:27 +0000 (16:44 +0200)]
Remove C++17-ism.
Carl Hetherington [Sun, 24 Sep 2023 14:41:57 +0000 (16:41 +0200)]
Copy-edit GUI strings.
Carl Hetherington [Sun, 24 Sep 2023 14:39:27 +0000 (16:39 +0200)]
Check for errors when calling the GPU lister.
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.
Carl Hetherington [Sun, 24 Sep 2023 10:09:16 +0000 (12:09 +0200)]
Only build grok for Ubuntu 22.04.
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.
Carl Hetherington [Sun, 24 Sep 2023 10:01:54 +0000 (12:01 +0200)]
Remove unnecessary using statements.
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.
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.
Carl Hetherington [Sun, 10 Sep 2023 21:45:56 +0000 (23:45 +0200)]
Cleanup: white space.
Carl Hetherington [Sun, 3 Sep 2023 22:58:19 +0000 (00:58 +0200)]
Further patch from Aaron.
Carl Hetherington [Sun, 9 Jul 2023 21:25:36 +0000 (23:25 +0200)]
Tidy up some includes / forward declarations.
Carl Hetherington [Sun, 9 Jul 2023 21:22:20 +0000 (23:22 +0200)]
Cleanup: white space tidying.
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()
Carl Hetherington [Fri, 7 Jul 2023 23:13:04 +0000 (01:13 +0200)]
Remove default constructor from DCPVideo.
Carl Hetherington [Fri, 7 Jul 2023 22:20:15 +0000 (00:20 +0200)]
Formatting, variable name tidying and some const correctness.
Carl Hetherington [Fri, 7 Jul 2023 21:42:08 +0000 (23:42 +0200)]
Move grok headers into src/wx/grok
Carl Hetherington [Fri, 7 Jul 2023 21:24:45 +0000 (23:24 +0200)]
Move grok headers into src/lib/grok
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".
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.
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).
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.
Carl Hetherington [Wed, 28 Sep 2022 23:03:43 +0000 (01:03 +0200)]
Add operator* for Time and int.
Carl Hetherington [Wed, 28 Sep 2022 21:59:06 +0000 (23:59 +0200)]
Write player debug logs from tests on -- --log=debug-player
Carl Hetherington [Sun, 2 Oct 2022 19:55:55 +0000 (21:55 +0200)]
Cleanup: fix name of film to match test.
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.
Carl Hetherington [Fri, 30 Sep 2022 20:46:33 +0000 (22:46 +0200)]
Bump ffmpeg to 5.1.2 "Riemann"
Carl Hetherington [Sat, 10 Sep 2022 22:10:22 +0000 (00:10 +0200)]
Normalise XML attribute names to be camelCase (#2241).
Carl Hetherington [Mon, 26 Sep 2022 18:20:16 +0000 (20:20 +0200)]
Use 2.18.x subdirectory for configuration.
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).
Carl Hetherington [Sun, 10 Dec 2023 20:52:45 +0000 (21:52 +0100)]
Cleanup: const.
Carl Hetherington [Sun, 10 Dec 2023 20:52:41 +0000 (21:52 +0100)]
Prevent crash if you forget to call FilterGraph::setup().
Carl Hetherington [Sun, 10 Dec 2023 15:20:51 +0000 (16:20 +0100)]
Add a premultiply filter to sources with an alpha channel (#2681).
Carl Hetherington [Sun, 10 Dec 2023 15:20:20 +0000 (16:20 +0100)]
Add FFmpegExaminer::has_alpha().
Carl Hetherington [Sun, 10 Dec 2023 15:20:02 +0000 (16:20 +0100)]
Cleanup: use a lambda.
Carl Hetherington [Sat, 9 Dec 2023 19:33:02 +0000 (20:33 +0100)]
Cleanup: use some better variable names.
Carl Hetherington [Fri, 8 Dec 2023 15:45:55 +0000 (16:45 +0100)]
Don't scan content if we don't need to (#2661).
Carl Hetherington [Fri, 8 Dec 2023 15:00:49 +0000 (16:00 +0100)]
Extract scan_content().
Carl Hetherington [Mon, 27 Nov 2023 23:33:22 +0000 (00:33 +0100)]
Support YUV422P9LE in alpha_blend() (#2671).
Carl Hetherington [Fri, 1 Dec 2023 23:40:10 +0000 (00:40 +0100)]
Supporters update.
Carl Hetherington [Fri, 1 Dec 2023 23:39:14 +0000 (00:39 +0100)]
Bump libdcp for another MCA channel ID fix.
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.
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).
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).
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).
Carl Hetherington [Mon, 27 Nov 2023 09:34:04 +0000 (10:34 +0100)]
Add Дима Агатов as a tester.
Carl Hetherington [Sun, 26 Nov 2023 23:56:28 +0000 (00:56 +0100)]
Supporters update.
Carl Hetherington [Sat, 25 Nov 2023 23:40:12 +0000 (00:40 +0100)]
Uninstall encode server link.
Carl Hetherington [Sat, 25 Nov 2023 23:06:46 +0000 (00:06 +0100)]
Add missing file=f so that all desktop shortcuts are uninstalled.
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.
Carl Hetherington [Sat, 25 Nov 2023 21:13:39 +0000 (22:13 +0100)]
Cleanup: add start_menu_shortcut().
Carl Hetherington [Sat, 25 Nov 2023 21:05:24 +0000 (22:05 +0100)]
Extract some common parts of the uninstaller.
Carl Hetherington [Sat, 25 Nov 2023 20:08:39 +0000 (21:08 +0100)]
Cleanup: remove unnecessary include.
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.
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.
Carl Hetherington [Sat, 25 Nov 2023 12:34:02 +0000 (13:34 +0100)]
Fix installer with non-ASCII user names (#2668).
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).
Carl Hetherington [Sun, 26 Nov 2023 20:23:25 +0000 (21:23 +0100)]
Fix typo in path.
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.
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).
Carl Hetherington [Sun, 26 Nov 2023 00:05:41 +0000 (01:05 +0100)]
Make an error more detailed.
Carl Hetherington [Fri, 24 Nov 2023 21:58:24 +0000 (22:58 +0100)]
Fix libzip config checks.
Carl Hetherington [Fri, 24 Nov 2023 10:31:22 +0000 (11:31 +0100)]
Fix debug assertion when adding a KDM.
Carl Hetherington [Thu, 23 Nov 2023 22:24:59 +0000 (23:24 +0100)]
Updated zh_CN translation from 刘汉源
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.
Carl Hetherington [Thu, 23 Nov 2023 00:23:20 +0000 (01:23 +0100)]
Clarify error messages about missing configuration.
Carl Hetherington [Tue, 21 Nov 2023 19:20:04 +0000 (20:20 +0100)]
Fix Centos 7 build.
Carl Hetherington [Tue, 21 Nov 2023 08:24:51 +0000 (09:24 +0100)]
Another Winodws build fix.
Carl Hetherington [Mon, 20 Nov 2023 23:31:02 +0000 (00:31 +0100)]
Missing header for Windows build.
Carl Hetherington [Mon, 20 Nov 2023 23:22:36 +0000 (00:22 +0100)]
Cleanup: whitespace and header sorting.
Carl Hetherington [Mon, 20 Nov 2023 22:59:26 +0000 (23:59 +0100)]
Fix class/struct confusion causing build error on macOS.
Carl Hetherington [Sun, 19 Nov 2023 23:25:27 +0000 (00:25 +0100)]
Verify encrypted DCPs (more) correctly (#2659).
Carl Hetherington [Sun, 19 Nov 2023 23:20:44 +0000 (00:20 +0100)]
Cleanup: use stack-allocated FileDialog and accept multiple KDMs.
Carl Hetherington [Sun, 19 Nov 2023 23:14:32 +0000 (00:14 +0100)]
Cleanup: use ScopeGuard.
Carl Hetherington [Mon, 20 Nov 2023 14:37:23 +0000 (15:37 +0100)]
Fix build.
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.
Carl Hetherington [Tue, 7 Nov 2023 23:59:42 +0000 (00:59 +0100)]
Cleanup: handle Filter objects by value rather than by reference.
Carl Hetherington [Tue, 7 Nov 2023 23:24:20 +0000 (00:24 +0100)]
Cleanup: remove an unnecessary shared_ptr.
Carl Hetherington [Tue, 7 Nov 2023 23:24:11 +0000 (00:24 +0100)]
Add header guards.
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).
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).
Carl Hetherington [Sun, 19 Nov 2023 20:34:27 +0000 (21:34 +0100)]
Fix "create KDM" button sensitivity with invalid KDM time range.
Carl Hetherington [Sun, 19 Nov 2023 20:33:11 +0000 (21:33 +0100)]
Cleanup: header ordering.
Carl Hetherington [Sun, 12 Nov 2023 21:09:48 +0000 (22:09 +0100)]
Improve progress reporting of digest calculations (might help with #2643).
Carl Hetherington [Sun, 19 Nov 2023 21:40:40 +0000 (22:40 +0100)]
Supporters update.
Carl Hetherington [Sun, 19 Nov 2023 20:07:25 +0000 (21:07 +0100)]
Fix out-of-bounds read in OSX disk checking (#2658).
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.