Carl Hetherington [Sun, 23 Jun 2024 17:08:00 +0000 (19:08 +0200)]
Remove sprintf() use to quell warning from macOS.
Carl Hetherington [Thu, 13 Jun 2024 23:45:18 +0000 (01:45 +0200)]
Add minimal player HTTP server (#2830).
Carl Hetherington [Sat, 15 Jun 2024 18:09:24 +0000 (20:09 +0200)]
Move some stuff into FilmViewer::dcp().
Carl Hetherington [Sat, 15 Jun 2024 16:02:27 +0000 (18:02 +0200)]
Extract internal player server to separate file and tidy up a bit.
Carl Hetherington [Fri, 14 Jun 2024 17:50:41 +0000 (19:50 +0200)]
Close socket when stopping the server.
Otherwise if we're calling e.g. Socket::run() the server's run() will
not terminate on stop().
Carl Hetherington [Fri, 14 Jun 2024 17:54:27 +0000 (19:54 +0200)]
Fall back to the source directory if we're not running an installed DoM.
This is useful for the web pages as they are in a subdirectory called
web in either version of resouces_path().
Carl Hetherington [Sat, 15 Jun 2024 23:19:45 +0000 (01:19 +0200)]
Add Socket::is_open().
Carl Hetherington [Fri, 14 Jun 2024 17:49:29 +0000 (19:49 +0200)]
Add Socket::close().
Carl Hetherington [Thu, 13 Jun 2024 23:44:29 +0000 (01:44 +0200)]
Add Socket::run().
Carl Hetherington [Thu, 13 Jun 2024 23:44:23 +0000 (01:44 +0200)]
Add and use set_deadline_from_now().
Carl Hetherington [Thu, 13 Jun 2024 23:43:54 +0000 (01:43 +0200)]
Add Socket::write for std::string.
Carl Hetherington [Thu, 13 Jun 2024 23:42:21 +0000 (01:42 +0200)]
Add log entry for the HTTP server.
Carl Hetherington [Thu, 13 Jun 2024 23:38:37 +0000 (01:38 +0200)]
Do everything required to stop the server in ::stop().
Carl Hetherington [Wed, 19 Jun 2024 22:05:08 +0000 (00:05 +0200)]
Merge remote-tracking branch 'origin/main' into v2.17.x
Carl Hetherington [Tue, 11 Jun 2024 11:55:18 +0000 (13:55 +0200)]
Missing include.
Carl Hetherington [Tue, 18 Jun 2024 23:09:09 +0000 (01:09 +0200)]
Supporters update.
Carl Hetherington [Tue, 11 Jun 2024 18:16:25 +0000 (20:16 +0200)]
Fix build with some older boosts.
Carl Hetherington [Tue, 18 Jun 2024 08:10:30 +0000 (10:10 +0200)]
Build tests on Ubuntu 24.04.
Carl Hetherington [Tue, 18 Jun 2024 15:28:20 +0000 (17:28 +0200)]
Add discouraging hint for MPEG2 (#2821).
Carl Hetherington [Mon, 17 Jun 2024 22:57:01 +0000 (00:57 +0200)]
Fix "available space" count passed to snprintf (#2832).
This is wrong (too big) and it causes an abort in some snprintf
checker on Ubuntu 24.04.
Carl Hetherington [Mon, 17 Jun 2024 23:07:46 +0000 (01:07 +0200)]
Supporters update.
Carl Hetherington [Mon, 17 Jun 2024 23:06:10 +0000 (01:06 +0200)]
Updated fr_FR translation from Lilian Lefranc.
Carl Hetherington [Tue, 11 Jun 2024 18:16:25 +0000 (20:16 +0200)]
Fix build with some older boosts.
Carl Hetherington [Tue, 11 Jun 2024 12:23:53 +0000 (14:23 +0200)]
Merge branch 'main' into v2.17.x
Carl Hetherington [Tue, 11 Jun 2024 12:23:39 +0000 (14:23 +0200)]
Supporters update.
Carl Hetherington [Tue, 11 Jun 2024 11:55:18 +0000 (13:55 +0200)]
Missing include.
Carl Hetherington [Mon, 10 Jun 2024 20:28:43 +0000 (22:28 +0200)]
Missing explicit.
Carl Hetherington [Mon, 10 Jun 2024 19:39:34 +0000 (21:39 +0200)]
Fall back to default font file if a font ID is not found in the content.
This should not happen, but seems rather likely given the mess that is
building (especially with users switching between versions).
Carl Hetherington [Sun, 9 Jun 2024 23:05:43 +0000 (01:05 +0200)]
Simplify the FontIDAllocator a lot (#2827).
This is at the expense of forward compatibility, and the need to
re-examine subtitle content (losing custom fonts as we do so).
But it does mean that the code is simpler, and there's not this weird
growth of IDs where a DCP gets imported with some font, and then the ID
becomes 0_font, and if you do it again it's 0_0_font, and so on.
Carl Hetherington [Sun, 9 Jun 2024 23:04:16 +0000 (01:04 +0200)]
Clarify some documentation slightly.
Carl Hetherington [Sun, 9 Jun 2024 21:42:36 +0000 (23:42 +0200)]
Add comment.
Carl Hetherington [Sun, 9 Jun 2024 21:38:24 +0000 (23:38 +0200)]
Fix an erroneous font ID error that can happen when loading projects from builds without release version tags.
So that last_written_by_earlier_than() always returns true,
check_font_ids() happens when it doesn't really need to.
Carl Hetherington [Sun, 9 Jun 2024 21:36:58 +0000 (23:36 +0200)]
Cleanup: text is a vector now.
Carl Hetherington [Sun, 9 Jun 2024 18:20:13 +0000 (20:20 +0200)]
Stop weird names appearing when the user clicks "copy as name" twice.
Carl Hetherington [Sun, 9 Jun 2024 18:19:47 +0000 (20:19 +0200)]
Cleanup: substr() can accept npos for the second parameter.
Carl Hetherington [Sat, 8 Jun 2024 22:41:04 +0000 (00:41 +0200)]
Add option to copy content settings from another project (#2808).
Carl Hetherington [Sat, 8 Jun 2024 21:29:56 +0000 (23:29 +0200)]
Bump libdcp for asdcplib assertion fix (#2825).
Carl Hetherington [Sat, 8 Jun 2024 18:21:37 +0000 (20:21 +0200)]
Only allow adding reels in custom reel mode (#2823).
Carl Hetherington [Sat, 8 Jun 2024 18:18:40 +0000 (20:18 +0200)]
Merge remote-tracking branch 'origin/main' into v2.17.x
Carl Hetherington [Sat, 8 Jun 2024 18:17:43 +0000 (20:17 +0200)]
Merge remote-tracking branch 'origin/main' into v2.17.x
Carl Hetherington [Fri, 7 Jun 2024 19:09:03 +0000 (21:09 +0200)]
Fix font ID allocation from DCP when there are subs and ccaps using the same IDs (#2822).
Previously we would always use <last-reel+1>_id as a disambiguated ID
for every case.
Carl Hetherington [Thu, 6 Jun 2024 19:17:56 +0000 (21:17 +0200)]
Support optimised rendering of YUV420P in OpenGL.
Carl Hetherington [Thu, 6 Jun 2024 19:16:54 +0000 (21:16 +0200)]
Store the video encoding of a DCP in the metadata (J2K/MPEG2).
Carl Hetherington [Tue, 4 Jun 2024 19:18:28 +0000 (21:18 +0200)]
Make sure MPEG2 encodes are always 2K (#2819).
Carl Hetherington [Tue, 4 Jun 2024 19:01:53 +0000 (21:01 +0200)]
Add an option to dump the decryption certificate from the KDM CLI.
Carl Hetherington [Mon, 3 Jun 2024 20:48:04 +0000 (22:48 +0200)]
Add $png_apps variable.
Carl Hetherington [Sun, 2 Jun 2024 18:57:30 +0000 (20:57 +0200)]
Bump test/data for another subtitle rendering reference fix.
Carl Hetherington [Fri, 31 May 2024 21:20:21 +0000 (23:20 +0200)]
Merge remote-tracking branch 'origin/main' into v2.17.x
Carl Hetherington [Fri, 31 May 2024 08:59:48 +0000 (10:59 +0200)]
Make the DCP-encode counting dependent on variant.
Carl Hetherington [Fri, 31 May 2024 08:49:52 +0000 (10:49 +0200)]
Fix incorrect default _show_report_a_problem.
Carl Hetherington [Thu, 30 May 2024 18:02:10 +0000 (20:02 +0200)]
Supporters update.
Carl Hetherington [Sun, 19 May 2024 20:33:44 +0000 (22:33 +0200)]
Render subtitles using show_in_cairo_context() instead of add_to_cairo_context().
This helps with #2813 and should fix #2474.
We started using add_to_cairo_context() again in
72c3a5f0f32f553a1f8abee2494f31d29b976383
because the rendering looked better. However colour changes within
lines cannot easily be rendered using add_to_cairo_context() it seems,
as the text is just added as a path and then you can stroke/fill it
with a single colour.
I hope that this change, which reverts 72c3a5 but also adds some calls
to enable hinting and use better anti-aliasing, looks OK. I looked
at some white-on-black subs close-up and the hinting seems to help.
Carl Hetherington [Wed, 29 May 2024 19:21:29 +0000 (21:21 +0200)]
Fix merge.
Carl Hetherington [Wed, 29 May 2024 19:12:17 +0000 (21:12 +0200)]
Merge remote-tracking branch 'origin/main' into v2.17.x
Carl Hetherington [Wed, 29 May 2024 13:02:54 +0000 (15:02 +0200)]
Bump SERVER_LINK_VERSION since we changed the name of some metadata.
Carl Hetherington [Wed, 29 May 2024 12:54:38 +0000 (14:54 +0200)]
Hide some warnings.
Carl Hetherington [Thu, 9 May 2024 21:01:08 +0000 (23:01 +0200)]
Use territory details from template.
Carl Hetherington [Thu, 9 May 2024 20:46:59 +0000 (22:46 +0200)]
Get chain, facility, studio and distributor from template.
Carl Hetherington [Thu, 9 May 2024 20:20:53 +0000 (22:20 +0200)]
Remove default Interop/SMPTE setting.
Carl Hetherington [Thu, 9 May 2024 20:13:15 +0000 (22:13 +0200)]
Remove default video bit rate settings.
Carl Hetherington [Thu, 9 May 2024 20:03:01 +0000 (22:03 +0200)]
Remove default DCP audio channel setting.
Carl Hetherington [Thu, 9 May 2024 19:56:07 +0000 (21:56 +0200)]
Remove default DCP content type setting.
Carl Hetherington [Sat, 25 May 2024 18:21:27 +0000 (20:21 +0200)]
Use ConfigRestorer to reset override_path after use.
Carl Hetherington [Sun, 26 May 2024 19:48:27 +0000 (20:48 +0100)]
Note that newer libsub version is required.
Carl Hetherington [Sun, 26 May 2024 19:47:56 +0000 (20:47 +0100)]
Fix build with newer libsub.
Carl Hetherington [Thu, 9 May 2024 19:33:56 +0000 (21:33 +0200)]
Improve save-template dialog and always use a default template.
Carl Hetherington [Thu, 9 May 2024 19:33:19 +0000 (21:33 +0200)]
Use std::vector for Config::templates().
Carl Hetherington [Thu, 9 May 2024 19:33:00 +0000 (21:33 +0200)]
Cleanup: make method private.
Carl Hetherington [Fri, 24 May 2024 21:50:03 +0000 (23:50 +0200)]
Read 16-bit audio DCPs correctly.
As far as I can tell they are totally non-standard, but apparently
the IMS3000 plays them so I guess we should too.
Carl Hetherington [Fri, 24 May 2024 21:49:32 +0000 (23:49 +0200)]
Verify that DCPs have 24-bit audio.
Carl Hetherington [Fri, 24 May 2024 20:12:32 +0000 (22:12 +0200)]
Don't repeat the same error/warning more than once.
Carl Hetherington [Fri, 24 May 2024 19:01:42 +0000 (21:01 +0200)]
Fix some incorrect verification messages.
Carl Hetherington [Wed, 22 May 2024 21:31:37 +0000 (23:31 +0200)]
Bump libsub for SSA Margin{L,R} support (#2811).
This also pulls in a colour fix for binary STL but the colours are
not yet visible in the preview due to another bug.
Carl Hetherington [Mon, 20 May 2024 14:55:57 +0000 (16:55 +0200)]
Rename new_test_film2 -> new_test_film.
Carl Hetherington [Mon, 20 May 2024 14:54:37 +0000 (16:54 +0200)]
Replace all new_test_film with new_test_film2.
Carl Hetherington [Mon, 20 May 2024 13:21:51 +0000 (15:21 +0200)]
Fix stream length for DCP content (#2688).
Carl Hetherington [Mon, 20 May 2024 13:21:24 +0000 (15:21 +0200)]
Allow running tests from trees made with cdist.
Carl Hetherington [Mon, 20 May 2024 19:36:57 +0000 (21:36 +0200)]
Use $HOME rather than hard-coded user name.
Carl Hetherington [Mon, 20 May 2024 18:00:07 +0000 (20:00 +0200)]
Cleanup, and try to make a test use less disk space.
Carl Hetherington [Mon, 20 May 2024 15:50:00 +0000 (17:50 +0200)]
More cleanups.
Carl Hetherington [Mon, 20 May 2024 15:16:44 +0000 (17:16 +0200)]
Another cleanup.
Carl Hetherington [Mon, 20 May 2024 15:05:16 +0000 (17:05 +0200)]
Clean up some more tests.
Carl Hetherington [Mon, 20 May 2024 14:58:55 +0000 (16:58 +0200)]
Clean up another big test.
Carl Hetherington [Mon, 20 May 2024 14:00:47 +0000 (16:00 +0200)]
Use new_test_film2.
Carl Hetherington [Mon, 20 May 2024 14:00:43 +0000 (16:00 +0200)]
Cleanup another test.
Carl Hetherington [Mon, 20 May 2024 12:37:06 +0000 (14:37 +0200)]
Add missing call to Cleanup::run().
Carl Hetherington [Sun, 19 May 2024 21:46:55 +0000 (23:46 +0200)]
Don't make _stream_states for unmapped audio, otherwise we wait for content
which will never arrive.
Carl Hetherington [Sun, 19 May 2024 21:27:34 +0000 (23:27 +0200)]
Add and use Content::has_mapped_audio().
Carl Hetherington [Sun, 19 May 2024 21:27:18 +0000 (23:27 +0200)]
Cleanup: use auto.
Carl Hetherington [Sun, 19 May 2024 20:51:46 +0000 (22:51 +0200)]
Merge remote-tracking branch 'origin/main' into v2.17.x
Carl Hetherington [Sun, 19 May 2024 20:41:53 +0000 (22:41 +0200)]
Fix thinko in previous.
Carl Hetherington [Sun, 19 May 2024 19:04:54 +0000 (21:04 +0200)]
Missing setup of DYLD_LIBRARY_PATH.
Carl Hetherington [Sun, 19 May 2024 18:09:48 +0000 (20:09 +0200)]
Another old libxml API instance.
Carl Hetherington [Sun, 19 May 2024 16:10:15 +0000 (18:10 +0200)]
Fix old libxml API use from main.
Carl Hetherington [Sat, 18 May 2024 09:41:53 +0000 (11:41 +0200)]
Cleanup: missing word in comment.
Carl Hetherington [Sat, 18 May 2024 09:41:44 +0000 (11:41 +0200)]
Remember position and size of caption list view.
Carl Hetherington [Fri, 17 May 2024 13:03:15 +0000 (15:03 +0200)]
Emit no audio from DCPs if none is mapped
This makes DCP content behave the same as FFmpeg.
Carl Hetherington [Fri, 17 May 2024 13:02:57 +0000 (15:02 +0200)]
Make sure we don't say some content has audio if none will be emitted.
In the FFmpeg (and shortly DCP) case we don't emit any audio if none is mapped,
so we must take this into account in the player.
Carl Hetherington [Thu, 16 May 2024 20:17:58 +0000 (22:17 +0200)]
Some more test fixups.
Carl Hetherington [Thu, 16 May 2024 14:58:53 +0000 (16:58 +0200)]
Fix some test references for auto-changing of cinemas file path to .sqlite3
Also come back to the v2.18.x branch of test/data.