Carl Hetherington [Wed, 4 Oct 2023 17:51:54 +0000 (19:51 +0200)]
Cleanup: whitespace to reduce the diff.
Carl Hetherington [Wed, 4 Oct 2023 17:51:45 +0000 (19:51 +0200)]
Cleanup: include ordering.
Carl Hetherington [Wed, 4 Oct 2023 17:47:32 +0000 (19:47 +0200)]
Don't pollute the global namespace with a namespace called fs.
Carl Hetherington [Wed, 4 Oct 2023 17:11:45 +0000 (19:11 +0200)]
Another patch from Aaron.
Carl Hetherington [Wed, 4 Oct 2023 13:36:55 +0000 (15:36 +0200)]
Log failure to schedule a frame with grok.
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:42:05 +0000 (13:42 +0200)]
Bump libdcp for things that grok needs.
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 [Mon, 16 Oct 2023 09:30:27 +0000 (11:30 +0200)]
Remove unused code.
Carl Hetherington [Sun, 15 Oct 2023 22:40:28 +0000 (00:40 +0200)]
This test suddenly just started failing with
opj_int_fix_mul: Assertion `(temp >> 13) <= (OPJ_INT64)0x7FFFFFFF' failed.
which is odd - why now?
Anywhere here we limit the OpenJPEG image values to what I think is
the "legal" range.
Carl Hetherington [Sun, 15 Oct 2023 15:34:33 +0000 (17:34 +0200)]
Supporters update.
Carl Hetherington [Sun, 15 Oct 2023 07:16:49 +0000 (09:16 +0200)]
Supporters update.
Carl Hetherington [Sat, 14 Oct 2023 19:48:25 +0000 (21:48 +0200)]
Fix DCP content font ID allocation to cope with DCPs that have multiple fonts
with the same name in the same reel (#2600).
Previously we had this id_for_font_in_reel() which would give an ID
of N_font-ID. This means we got duplicate font IDs.
Here we replace that method with FontAllocator, which gives an ID of
N_font-ID for the first font and M_font-ID, where M is a number higher than
the highest reel index. The idea is to support the required new IDs
without breaking exisiting projects.
There is some documentation of how it works in doc/design/fonts
Carl Hetherington [Sat, 14 Oct 2023 19:43:52 +0000 (21:43 +0200)]
Cleanup: assert.
Carl Hetherington [Sat, 14 Oct 2023 19:41:15 +0000 (21:41 +0200)]
Cleanup: rename sc -> subtitle_asset
Carl Hetherington [Sat, 14 Oct 2023 19:40:32 +0000 (21:40 +0200)]
Cleanup: assert result of get_font().
Carl Hetherington [Thu, 12 Oct 2023 08:50:24 +0000 (10:50 +0200)]
Bump libdcp for channel ID fix (#2629).
Carl Hetherington [Tue, 10 Oct 2023 18:35:16 +0000 (20:35 +0200)]
Another compilation error fix for old toolchains.
Carl Hetherington [Tue, 10 Oct 2023 18:35:06 +0000 (20:35 +0200)]
Cleanup: remove unnecessary namespace.
Carl Hetherington [Tue, 10 Oct 2023 17:32:37 +0000 (19:32 +0200)]
Apply another fix for a weird compilation error on old compilers.
Carl Hetherington [Tue, 10 Oct 2023 10:12:54 +0000 (12:12 +0200)]
Bump libdcp for fixes to build on Ubuntu 16.04 etc.
Carl Hetherington [Mon, 9 Oct 2023 23:05:27 +0000 (01:05 +0200)]
Add new "copy markers from this DCP" option (#2628).
Also stop the "copy settings" options from doing this, as Carsten points
out that it could be confusing and potentially very bad if you copy
markers from an OV to an edited VF which then bring house lights up at
the wrong time or whatever.
Carl Hetherington [Mon, 9 Oct 2023 22:58:39 +0000 (00:58 +0200)]
Rename copy_dcp_details_to_film -> copy_dcp_settings_to_film.
Carl Hetherington [Mon, 9 Oct 2023 21:52:16 +0000 (23:52 +0200)]
Supporters update.
Carl Hetherington [Fri, 6 Oct 2023 00:37:16 +0000 (02:37 +0200)]
Use dcp::filesystem to wrap filesystem calls and fix_long_path
anything that is passed to read_file() from libcxml.
This should fix #2623 and other similar problems.
Carl Hetherington [Wed, 4 Oct 2023 22:20:27 +0000 (00:20 +0200)]
Bump libdcp for new filesystem wrappers.
Carl Hetherington [Sun, 8 Oct 2023 21:04:59 +0000 (23:04 +0200)]
Bump leqm-nrt to build with -O2 for a large speed-up (#2616).
Carl Hetherington [Wed, 4 Oct 2023 23:17:16 +0000 (01:17 +0200)]
Fix flickering timeline drags on Windows (#2625).
Carl Hetherington [Mon, 2 Oct 2023 21:41:06 +0000 (23:41 +0200)]
You are advised -> It is advisable (#2189).
Carl Hetherington [Sat, 30 Sep 2023 20:58:45 +0000 (22:58 +0200)]
Cleanup: use a lambda.
Carl Hetherington [Sat, 30 Sep 2023 10:35:26 +0000 (12:35 +0200)]
Fix test/data branching SNAFU.
Carl Hetherington [Sat, 30 Sep 2023 10:32:42 +0000 (12:32 +0200)]
Allow DCP content type from template to work.
Carl Hetherington [Sat, 30 Sep 2023 10:28:05 +0000 (12:28 +0200)]
Allow SMPTE/interop setting from template to work.
Carl Hetherington [Sat, 30 Sep 2023 10:09:00 +0000 (12:09 +0200)]
Add --no-encrypt with the same idea as the previous commit.
Carl Hetherington [Sat, 30 Sep 2023 09:58:29 +0000 (11:58 +0200)]
Add --twod option to create CLI and stop 2D from being forced over
a template if --threed is not specified (#2620/GH#22).
Carl Hetherington [Sat, 30 Sep 2023 09:42:26 +0000 (11:42 +0200)]
Cleanup: add some _ prefixes.
Carl Hetherington [Sat, 30 Sep 2023 09:37:34 +0000 (11:37 +0200)]
Cleanup: make some variables private.
Carl Hetherington [Sat, 30 Sep 2023 09:29:42 +0000 (11:29 +0200)]
Cleanup: extract some stuff to a method in CreateCLI.
Carl Hetherington [Sat, 30 Sep 2023 08:43:15 +0000 (10:43 +0200)]
Apply video range from template (#2611).
Carl Hetherington [Thu, 28 Sep 2023 20:18:34 +0000 (22:18 +0200)]
Support alpha blending 64-bit RGB onto things.
Carl Hetherington [Wed, 27 Sep 2023 22:00:15 +0000 (00:00 +0200)]
Rename alpha_blend_test_one -> alpha_blend_test_bgra_onto.
Carl Hetherington [Sun, 24 Sep 2023 22:38:10 +0000 (00:38 +0200)]
Cleanup: extract some parts of alpha_blend().
Carl Hetherington [Tue, 26 Sep 2023 22:16:38 +0000 (00:16 +0200)]
Fix errors with WAVs containing markers (#2617).
I'm not 100% sure about this but they seem to end up giving audio
packets with no channels and no frames. Here we handle such packets
better.
Carl Hetherington [Thu, 28 Sep 2023 19:02:44 +0000 (21:02 +0200)]
Install for all users on Windows (#2202).
Carl Hetherington [Sun, 24 Sep 2023 21:30:19 +0000 (23:30 +0200)]
Add some new pixfmts.
Carl Hetherington [Thu, 21 Sep 2023 21:58:49 +0000 (23:58 +0200)]
Clean up and add Ubuntu 23.10
Carl Hetherington [Wed, 20 Sep 2023 23:10:14 +0000 (01:10 +0200)]
Supporters update.
Carl Hetherington [Wed, 20 Sep 2023 21:59:20 +0000 (23:59 +0200)]
Fix example names in prefs (#2612).
Carl Hetherington [Wed, 20 Sep 2023 20:57:03 +0000 (22:57 +0200)]
Better error message.
Carl Hetherington [Fri, 15 Sep 2023 08:53:33 +0000 (10:53 +0200)]
Updated zh_CN translation from poppinzhang.
Carl Hetherington [Thu, 14 Sep 2023 21:12:19 +0000 (23:12 +0200)]
Updated sl_SI translation from Martin Srebotnjak.
Carl Hetherington [Thu, 14 Sep 2023 08:57:18 +0000 (10:57 +0200)]
Supporters update.
Carl Hetherington [Wed, 13 Sep 2023 21:27:39 +0000 (23:27 +0200)]
Supporters update.
Carl Hetherington [Wed, 13 Sep 2023 20:29:04 +0000 (22:29 +0200)]
Bump libdcp for fix to GH #20, a spurious rejection of a KDM.
Carl Hetherington [Tue, 12 Sep 2023 21:14:42 +0000 (23:14 +0200)]
Update ISDCF name when DCP track changes.
Carl Hetherington [Tue, 12 Sep 2023 21:14:35 +0000 (23:14 +0200)]
Somewhat fix inclusion of CCAP language in ISDCF name (#2610).
Carl Hetherington [Tue, 12 Sep 2023 21:14:06 +0000 (23:14 +0200)]
Add Film::closed_caption_languages().
Carl Hetherington [Mon, 11 Sep 2023 22:36:05 +0000 (00:36 +0200)]
Update DCP name when some text changes from subtitle to ccap.
Carl Hetherington [Mon, 11 Sep 2023 22:35:39 +0000 (00:35 +0200)]
Always add -CCAP to ISDCF names if there are ccaps.
Carl Hetherington [Sun, 10 Sep 2023 20:14:58 +0000 (22:14 +0200)]
Cleanup: use some stack allocation and shared_ptr.