dcpomatic.git
2 years agoImprove alignment of audio language controls (#2040).
Carl Hetherington [Sun, 6 Jun 2021 10:23:43 +0000 (12:23 +0200)]
Improve alignment of audio language controls (#2040).

2 years agoAdd DCPOMATIC_CHECKBOX_BOTTOM_PAD.
Carl Hetherington [Sun, 6 Jun 2021 10:23:18 +0000 (12:23 +0200)]
Add DCPOMATIC_CHECKBOX_BOTTOM_PAD.

2 years agoShrink width of timecode entries on macOS (#2041).
Carl Hetherington [Sun, 6 Jun 2021 09:44:19 +0000 (11:44 +0200)]
Shrink width of timecode entries on macOS (#2041).

2 years agoUpdate run/ script DYLD path.
Carl Hetherington [Sun, 6 Jun 2021 09:33:57 +0000 (11:33 +0200)]
Update run/ script DYLD path.

2 years agoSet LSUI to 0 in the .plist for the server (#2010). v2.15.154
Carl Hetherington [Fri, 4 Jun 2021 17:46:47 +0000 (19:46 +0200)]
Set LSUI to 0 in the .plist for the server (#2010).

2 years agoGive an error if a non-DCP folder is selected for DCP writing (#2024).
Carl Hetherington [Fri, 4 Jun 2021 22:01:03 +0000 (00:01 +0200)]
Give an error if a non-DCP folder is selected for DCP writing (#2024).

2 years agoFix errors when seeking FFmpeg for some formats.
Carl Hetherington [Thu, 3 Jun 2021 20:55:44 +0000 (22:55 +0200)]
Fix errors when seeking FFmpeg for some formats.

The comments discuss this in a bit more depth, but basically we see
errors from avcodec_send_packet after seek.  ffplay etc. seem basically
to ignore all errors from avcodec_send_packet, and I can't find a
"proper" fix, so here's a half-way house hack: ignore some errors
after seek.  Nasty.

2 years agoIgnore HMAC discrepencies when reading DCPs.
Carl Hetherington [Fri, 4 Jun 2021 20:30:25 +0000 (22:30 +0200)]
Ignore HMAC discrepencies when reading DCPs.

2 years agoC++11 tidying.
Carl Hetherington [Thu, 3 Jun 2021 20:46:53 +0000 (22:46 +0200)]
C++11 tidying.

2 years agoBump libsub to fix #2036.
Carl Hetherington [Thu, 3 Jun 2021 19:12:06 +0000 (21:12 +0200)]
Bump libsub to fix #2036.

Also fixes problems with invisible subtitles from binary STL files
with weird line numbers.

2 years agoIgnore errors from avcodec_receive_frame when flushing video (#2035).
Carl Hetherington [Thu, 3 Jun 2021 18:40:16 +0000 (20:40 +0200)]
Ignore errors from avcodec_receive_frame when flushing video (#2035).

The test fails if we don't do this; it doesn't really seem 100%
convincing but we are already doing this for audio.

2 years agoAdd prep_smoke.sh hack script.
Carl Hetherington [Thu, 3 Jun 2021 13:31:16 +0000 (15:31 +0200)]
Add prep_smoke.sh hack script.

2 years agoFix relinking in make_dmg.sh v2.15.153
Carl Hetherington [Mon, 31 May 2021 13:45:51 +0000 (15:45 +0200)]
Fix relinking in make_dmg.sh

c432ef98c4cf3b2bda32734983eec3b42b8c3d1e completely broke the relinking
of libraries using install_name_tool by only doing it for the x86_64
part of the binaries.  This commit fixes that, and also does some
tidy up that happened while trying to debug the error.

The main cleanup is that --deep is no longer used with codesign, rather
we sign all the executables ourselves manually.  Various Apple forums
suggest that --deep is a Bad Idea for reasons that aren't really clear.

For reference, after spending days trying to debug the Gatekeeper
refusal to start DoM the way to reveal the problem was:

1. start a clean VM (there are caches everywhere, so once a failure has
   happened you are even less likely to get any useful logging on the
   second failure).

2. open "Console" on macOS; logs are written to un-greppable places so
   you have to use this to see everything.

3. click "start streaming"; I don't know if this step is necessary.

4. put a search term in the search box (e.g. "dcp" for this)

5. start the thing that is not working.

And remember that otool without `-arch` on a fat binary will only really
operate / look at the first? native? architecture, so if you have
an x86_64/arm64 binary and the  arm64 parts are wrong you won't see
anything about that with `otool -L`, only with `otool -arch arm64 -L`

2 years agoBump libdcp for fix to #2029.
Carl Hetherington [Tue, 1 Jun 2021 23:45:29 +0000 (01:45 +0200)]
Bump libdcp for fix to #2029.

2 years agoAdd hint when no audio language is set (#2033).
Carl Hetherington [Tue, 1 Jun 2021 15:10:16 +0000 (17:10 +0200)]
Add hint when no audio language is set (#2033).

2 years agoTidying.
Carl Hetherington [Tue, 1 Jun 2021 15:09:56 +0000 (17:09 +0200)]
Tidying.

2 years agoAdd comment.
Carl Hetherington [Tue, 1 Jun 2021 15:09:48 +0000 (17:09 +0200)]
Add comment.

2 years agoPut audio language back in the Film.
Carl Hetherington [Tue, 1 Jun 2021 09:28:48 +0000 (11:28 +0200)]
Put audio language back in the Film.

It feels neat to have audio language in the audio tab, to match
the subtitle language in the subtitle tab.  It also avoids the potential
confusion of there being an audio language setting in the DCP metadata
but no subtitle language setting.  However:

- I am yet to find a need to describe multiple audio languages in the
same DCP (all previous users of Film::audio_languages() were just taking
the first language off the list).

- As Carsten points out it's fiddly to have to set the audio language
for 5 separate-channel WAV files, for example (you wouldn't actually
have had to do this, but it would have felt like you did).

I think subtitle language remains neater where it is (per-content)
as there is this additional subtitle language metadata and it makes
much more sense (and is much more likely) that there are multiple
subtitle languages in a DCP than it does multiple audio languages.

2 years agoTweak behaviour of crop link buttons (#2034).
Carl Hetherington [Sun, 30 May 2021 22:44:24 +0000 (00:44 +0200)]
Tweak behaviour of crop link buttons (#2034).

Now if you change left and click "link" the right will follow it,
and vice versa.

2 years agoAllow any ratio to appear in the ISDCF name as an interior aspect ratio (#2030).
Carl Hetherington [Sun, 30 May 2021 22:25:25 +0000 (00:25 +0200)]
Allow any ratio to appear in the ISDCF name as an interior aspect ratio (#2030).

2 years agoUpdate ISDCF name when crop changes the ratio of the video (#2030).
Carl Hetherington [Sun, 30 May 2021 22:24:44 +0000 (00:24 +0200)]
Update ISDCF name when crop changes the ratio of the video (#2030).

2 years agoFix crash when enabling luminance in SMPTE metadata.
Carl Hetherington [Sun, 30 May 2021 21:44:23 +0000 (23:44 +0200)]
Fix crash when enabling luminance in SMPTE metadata.

2 years agoAdd short discussion about specifying languages.
Carl Hetherington [Sun, 30 May 2021 21:11:44 +0000 (23:11 +0200)]
Add short discussion about specifying languages.

2 years agoMissing full stop.
Carl Hetherington [Sun, 30 May 2021 19:06:24 +0000 (21:06 +0200)]
Missing full stop.

2 years agoSign things that come out of the combiner (#2028).
Carl Hetherington [Sun, 30 May 2021 19:00:12 +0000 (21:00 +0200)]
Sign things that come out of the combiner (#2028).

2 years agoAllow annotation text to be set when combining DCPs.
Carl Hetherington [Sun, 30 May 2021 18:58:31 +0000 (20:58 +0200)]
Allow annotation text to be set when combining DCPs.

2 years agopot/merge.
Carl Hetherington [Fri, 28 May 2021 21:38:41 +0000 (23:38 +0200)]
pot/merge.

2 years agoMark some strings that should not be translated; thanks to Adam Klotblixt.
Carl Hetherington [Fri, 28 May 2021 21:38:22 +0000 (23:38 +0200)]
Mark some strings that should not be translated; thanks to Adam Klotblixt.

2 years agoUpdated sv_SE translation from Adam Klotblixt.
Carl Hetherington [Fri, 28 May 2021 21:34:54 +0000 (23:34 +0200)]
Updated sv_SE translation from Adam Klotblixt.

2 years agoAdd some useful command-line options to dcpomatic2_disk.
Carl Hetherington [Fri, 28 May 2021 09:24:54 +0000 (11:24 +0200)]
Add some useful command-line options to dcpomatic2_disk.

2 years agoBump lwext for fix for making larger partitions (#2021).
Carl Hetherington [Fri, 28 May 2021 09:22:47 +0000 (11:22 +0200)]
Bump lwext for fix for making larger partitions (#2021).

2 years agoFix missing verification note. v2.15.152
Carl Hetherington [Thu, 27 May 2021 12:46:23 +0000 (14:46 +0200)]
Fix missing verification note.

2 years agoBump libdcp for fix to decryption of SMPTE subtitles.
Carl Hetherington [Thu, 27 May 2021 12:27:22 +0000 (14:27 +0200)]
Bump libdcp for fix to decryption of SMPTE subtitles.

Also add a test for that.

2 years agoInsert a delay to make sure the QUIT message arrives (#2018).
Carl Hetherington [Wed, 26 May 2021 21:06:52 +0000 (23:06 +0200)]
Insert a delay to make sure the QUIT message arrives (#2018).

I have no idea why this is necessary, but the nanomsg documentation
suggests it.

2 years agoTidy up Nanomsg more correctly.
Carl Hetherington [Wed, 26 May 2021 21:06:42 +0000 (23:06 +0200)]
Tidy up Nanomsg more correctly.

2 years agoTidy can_build_disk checks to be more robust.
Carl Hetherington [Wed, 26 May 2021 10:56:54 +0000 (12:56 +0200)]
Tidy can_build_disk checks to be more robust.

2 years agoFix potential very rare test failure.
Carl Hetherington [Wed, 26 May 2021 10:56:36 +0000 (12:56 +0200)]
Fix potential very rare test failure.

2 years agoRemove privilege escalation via seteuid() etc. on Linux.
Carl Hetherington [Wed, 26 May 2021 07:43:36 +0000 (09:43 +0200)]
Remove privilege escalation via seteuid() etc. on Linux.

2 years agoUse setcap for privileges on RPM-based distros (#2001).
Carl Hetherington [Tue, 25 May 2021 23:13:58 +0000 (01:13 +0200)]
Use setcap for privileges on RPM-based distros (#2001).

2 years agoUse setcap for privileges on Debian 10 and Ubuntu (#2001).
Carl Hetherington [Tue, 25 May 2021 22:52:08 +0000 (00:52 +0200)]
Use setcap for privileges on Debian 10 and Ubuntu (#2001).

2 years agoMove video level conversion for RGB from FFmpegImageProxy to Image.
Carl Hetherington [Mon, 24 May 2021 22:57:16 +0000 (00:57 +0200)]
Move video level conversion for RGB from FFmpegImageProxy to Image.

Since FFmpeg does not do video level conversion for RGB sources
when we (sort of) ask it to in Image::crop_scale_window() it seems
to make more sense to compensate for that by calling
full_to_video_range() in the same place (rather than in
FFmpegImageProxy).

2 years agoC++11 tidying.
Carl Hetherington [Mon, 24 May 2021 22:56:44 +0000 (00:56 +0200)]
C++11 tidying.

2 years agoAdd video_to_full_range implementation for RGB48LE.
Carl Hetherington [Mon, 24 May 2021 22:56:03 +0000 (00:56 +0200)]
Add video_to_full_range implementation for RGB48LE.

2 years agoClamp results correctly when shifting video levels, and account for that in tests.
Carl Hetherington [Mon, 24 May 2021 22:32:39 +0000 (00:32 +0200)]
Clamp results correctly when shifting video levels, and account for that in tests.

2 years agoMake a test check more informative.
Carl Hetherington [Mon, 24 May 2021 22:30:48 +0000 (00:30 +0200)]
Make a test check more informative.

2 years agoconst-correctness tweak.
Carl Hetherington [Mon, 24 May 2021 21:46:35 +0000 (23:46 +0200)]
const-correctness tweak.

2 years agoUse decoder_factory() and a lambda to clean things up a bit.
Carl Hetherington [Mon, 24 May 2021 21:16:07 +0000 (23:16 +0200)]
Use decoder_factory() and a lambda to clean things up a bit.

2 years agoForward-declare the right class.
Carl Hetherington [Mon, 24 May 2021 21:15:46 +0000 (23:15 +0200)]
Forward-declare the right class.

2 years agoRequire lib64canberra-gtk0 on Mageia.
Carl Hetherington [Mon, 24 May 2021 23:12:52 +0000 (01:12 +0200)]
Require lib64canberra-gtk0 on Mageia.

2 years agoBuild disk writer on Mageia.
Carl Hetherington [Tue, 25 May 2021 10:42:51 +0000 (12:42 +0200)]
Build disk writer on Mageia.

2 years agoDon't react so strongly to failure to bind the play server socket when starting a...
Carl Hetherington [Sun, 23 May 2021 21:04:46 +0000 (23:04 +0200)]
Don't react so strongly to failure to bind the play server socket when starting a second player.

2 years agoFix sensitivity of "Make KDM(s)" button (#2007). v2.15.151
Carl Hetherington [Sat, 22 May 2021 13:52:22 +0000 (15:52 +0200)]
Fix sensitivity of "Make KDM(s)" button (#2007).

Before you could click it without selecting a DKDM.

2 years agoC++11 tidying.
Carl Hetherington [Sat, 22 May 2021 13:50:44 +0000 (15:50 +0200)]
C++11 tidying.

2 years agoFix invalid memory access introduced in 6f832724ef942f133f6f8d0a06d7377beea8f7a6 v2.15.150
Carl Hetherington [Fri, 21 May 2021 14:24:02 +0000 (16:24 +0200)]
Fix invalid memory access introduced in 6f832724ef942f133f6f8d0a06d7377beea8f7a6

2 years agoFix thinko in 4ce4b8d3429a97eb4df63460c7e73863f44a621e
Carl Hetherington [Fri, 21 May 2021 07:44:51 +0000 (09:44 +0200)]
Fix thinko in 4ce4b8d3429a97eb4df63460c7e73863f44a621e

Audio content of course doesn't have a single selected stream, so
let's get the channel count from how all the streams are mapped.

2 years agoFix path to test libraries on macOS.
Carl Hetherington [Fri, 21 May 2021 07:32:32 +0000 (09:32 +0200)]
Fix path to test libraries on macOS.

2 years agoTweak crop icon for GTK2 builds (#1997).
Carl Hetherington [Thu, 20 May 2021 18:25:48 +0000 (20:25 +0200)]
Tweak crop icon for GTK2 builds (#1997).

2 years agoCheck that wxSystemSettings::GetAppearance() exists.
Carl Hetherington [Mon, 17 May 2021 18:35:38 +0000 (20:35 +0200)]
Check that wxSystemSettings::GetAppearance() exists.

2 years agoRestore support for building thin or universal binaries for macOS.
Carl Hetherington [Mon, 17 May 2021 13:13:12 +0000 (15:13 +0200)]
Restore support for building thin or universal binaries for macOS.

2 years agoSpecify correct number of channels for LEQ(m) analyses of single pieces of content...
Carl Hetherington [Thu, 20 May 2021 18:15:14 +0000 (20:15 +0200)]
Specify correct number of channels for LEQ(m) analyses of single pieces of content (#1991)

If we're analysing one piece of content, pass its channel count
into the leqm::Calculator rather than just using the film channel count.

2 years agoBump leqm-nrt for a possible fix for #2006.
Carl Hetherington [Thu, 20 May 2021 14:49:27 +0000 (16:49 +0200)]
Bump leqm-nrt for a possible fix for #2006.

2 years agoDon't assert on a non-existant codec (#1999).
Carl Hetherington [Wed, 19 May 2021 20:54:19 +0000 (22:54 +0200)]
Don't assert on a non-existant codec (#1999).

2 years agoMissing macOS dmg ID.
Carl Hetherington [Thu, 13 May 2021 12:32:34 +0000 (14:32 +0200)]
Missing macOS dmg ID.

2 years agoDon't fail to build without disk_writer. v2.15.149
Carl Hetherington [Wed, 12 May 2021 06:07:15 +0000 (08:07 +0200)]
Don't fail to build without disk_writer.

2 years agoAdd a full stop. v2.15.148
Carl Hetherington [Tue, 11 May 2021 22:10:41 +0000 (00:10 +0200)]
Add a full stop.

2 years agoFix disk writer permissions in RPM packages (#1994).
Carl Hetherington [Tue, 11 May 2021 22:00:36 +0000 (00:00 +0200)]
Fix disk writer permissions in RPM packages (#1994).

2 years agoFix disk_writer perms in .deb files (#1994).
Carl Hetherington [Tue, 11 May 2021 20:35:22 +0000 (22:35 +0200)]
Fix disk_writer perms in .deb files (#1994).

2 years agoDon't apply the Windows long path fix twice. v2.15.147
Carl Hetherington [Tue, 11 May 2021 14:09:20 +0000 (16:09 +0200)]
Don't apply the Windows long path fix twice.

2 years agoRevert incorrect 'fixing' of path on Windows (#1992).
Carl Hetherington [Tue, 11 May 2021 12:08:42 +0000 (14:08 +0200)]
Revert incorrect 'fixing' of path on Windows (#1992).

This "to" path is on the ext2 drive so should not have any Windows
hacks applied to it.

2 years agoOpen a dialogue if pinging the back-end fails on macOS. v2.15.146
Carl Hetherington [Mon, 10 May 2021 13:12:23 +0000 (15:12 +0200)]
Open a dialogue if pinging the back-end fails on macOS.

At least this means the user will get another go without losing
their setup.  My only theory at this point is that sometimes the
backend takes a crazy amount of time to start up because of some
SIP / gatekeeper type nonsense (#1990).

2 years agoFix name of macOS in the .dmg README.
Carl Hetherington [Mon, 10 May 2021 07:54:40 +0000 (09:54 +0200)]
Fix name of macOS in the .dmg README.

2 years agoAttempt ping from front- to back-end several times (#1990). v2.15.145
Carl Hetherington [Sun, 9 May 2021 14:43:24 +0000 (16:43 +0200)]
Attempt ping from front- to back-end several times (#1990).

On macOS it seems that the backend sometimes is not started very
quickly.  Adding a long timeout to ping does not work, perhaps
because the backend is not listening.

Trying a few times seems to fix it.

With this fix I saw this log:

Sun May  9 23:02:51 2021: dcpomatic_disk_writer e63a485e23 started
Sun May  9 23:02:51 2021: Entering main loop
Sun May  9 23:02:51 2021: Writer receives command: P

from the backend and

Sun May  9 23:02:45 2021: Could not send ping to writer (attempt 1)
Sun May  9 23:02:47 2021: Could not send ping to writer (attempt 2)
Sun May  9 23:02:49 2021: Could not send ping to writer (attempt 3)

from the front-end, suggesting that the first 3 pings went to /dev/null
and the 4th was heard.

2 years agoFix wrapping of try-unmount dialogue on macOS (#1989).
Carl Hetherington [Sun, 9 May 2021 08:39:26 +0000 (10:39 +0200)]
Fix wrapping of try-unmount dialogue on macOS (#1989).

2 years agoAdd more logging to disk writer.
Carl Hetherington [Sun, 9 May 2021 08:08:39 +0000 (10:08 +0200)]
Add more logging to disk writer.

2 years agoRemove erroneous call to optional_node_child().
Carl Hetherington [Sun, 9 May 2021 20:07:51 +0000 (22:07 +0200)]
Remove erroneous call to optional_node_child().

Just after this we loop over all <Text> nodes, and optional_node_child
will raise an exception if there is more than one.

2 years agoC++11 tidying.
Carl Hetherington [Sun, 9 May 2021 20:07:32 +0000 (22:07 +0200)]
C++11 tidying.

2 years agoAdd some more logging to disk_writer. v2.15.144
Carl Hetherington [Sat, 8 May 2021 15:35:12 +0000 (17:35 +0200)]
Add some more logging to disk_writer.

2 years agoFix missing _writer binary in disk image.
Carl Hetherington [Sat, 8 May 2021 13:24:45 +0000 (15:24 +0200)]
Fix missing _writer binary in disk image.

2 years agoBuild disk writer for Ubuntu 21.04.
Carl Hetherington [Fri, 7 May 2021 22:30:15 +0000 (00:30 +0200)]
Build disk writer for Ubuntu 21.04.

2 years agoUpdated nl_NL translation from Rob van Nieuwkerk.
Carl Hetherington [Fri, 7 May 2021 22:00:22 +0000 (00:00 +0200)]
Updated nl_NL translation from Rob van Nieuwkerk.

2 years agoMore manual tweaks.
Carl Hetherington [Fri, 7 May 2021 20:35:03 +0000 (22:35 +0200)]
More manual tweaks.

2 years agoManual updates.
Carl Hetherington [Fri, 7 May 2021 20:15:15 +0000 (22:15 +0200)]
Manual updates.

2 years agoFix alignment of label.
Carl Hetherington [Fri, 7 May 2021 20:14:38 +0000 (22:14 +0200)]
Fix alignment of label.

2 years agoAdd DCPOMATIC_SPIN_CTRL_WIDTH and use it in a few places.
Carl Hetherington [Fri, 7 May 2021 20:14:33 +0000 (22:14 +0200)]
Add DCPOMATIC_SPIN_CTRL_WIDTH and use it in a few places.

2 years agoHide some more FFmpeg warnings. v2.15.143
Carl Hetherington [Fri, 7 May 2021 17:13:04 +0000 (19:13 +0200)]
Hide some more FFmpeg warnings.

2 years agoMissing #include.
Carl Hetherington [Fri, 7 May 2021 16:49:51 +0000 (18:49 +0200)]
Missing #include.

2 years agoHide some warnings from ffmpeg on Centos 7.
Carl Hetherington [Fri, 7 May 2021 16:37:55 +0000 (18:37 +0200)]
Hide some warnings from ffmpeg on Centos 7.

2 years agoRe-fix previous. v2.15.142
Carl Hetherington [Fri, 7 May 2021 16:22:27 +0000 (18:22 +0200)]
Re-fix previous.

2 years agoBump libdcp for centos 7 build fix.
Carl Hetherington [Fri, 7 May 2021 16:16:17 +0000 (18:16 +0200)]
Bump libdcp for centos 7 build fix.

2 years agoFix appimage build.
Carl Hetherington [Fri, 7 May 2021 16:09:02 +0000 (18:09 +0200)]
Fix appimage build.

2 years agoUpdated cs_CZ translation from Tomáš Begeni.
Carl Hetherington [Fri, 7 May 2021 15:16:33 +0000 (17:16 +0200)]
Updated cs_CZ translation from Tomáš Begeni.

2 years agoFix build with some older compilers.
Carl Hetherington [Fri, 7 May 2021 15:15:20 +0000 (17:15 +0200)]
Fix build with some older compilers.

2 years agoMissing override statements. v2.15.141
Carl Hetherington [Fri, 7 May 2021 06:07:05 +0000 (08:07 +0200)]
Missing override statements.

2 years agopot/merge.
Carl Hetherington [Thu, 6 May 2021 22:32:45 +0000 (00:32 +0200)]
pot/merge.

2 years agoC++11 tidying.
Carl Hetherington [Mon, 3 May 2021 09:17:34 +0000 (11:17 +0200)]
C++11 tidying.

2 years agoAdd pixel format 0 (AV_PIX_FMT_YUV420P) to make_part_black().
Carl Hetherington [Sun, 2 May 2021 23:38:11 +0000 (01:38 +0200)]
Add pixel format 0 (AV_PIX_FMT_YUV420P) to make_part_black().

Remainder of fix for #1984.

2 years agoTest output tweaks.
Carl Hetherington [Sun, 2 May 2021 23:37:46 +0000 (01:37 +0200)]
Test output tweaks.

2 years agoAdd export test DCP -> h264 to trigger #1984.
Carl Hetherington [Sun, 2 May 2021 23:37:21 +0000 (01:37 +0200)]
Add export test DCP -> h264 to trigger #1984.

2 years agoAdd pixel format 66 (AV_PIX_FMT_YUV422P10LE) to make_part_black().
Carl Hetherington [Sun, 2 May 2021 09:30:16 +0000 (11:30 +0200)]
Add pixel format 66 (AV_PIX_FMT_YUV422P10LE) to make_part_black().

Part of fix for #1984.

2 years agoAdd export test DCP -> prores to trigger #1984.
Carl Hetherington [Sun, 2 May 2021 09:29:56 +0000 (11:29 +0200)]
Add export test DCP -> prores to trigger #1984.