dcpomatic.git
2 years agoFix strange layout problems with the content sub panels (#2059).
Carl Hetherington [Thu, 8 Jul 2021 22:30:02 +0000 (00:30 +0200)]
Fix strange layout problems with the content sub panels (#2059).

It seems that if Layout() is called on a sizer inside a wxScrolledWindow
when that window is scrolled, things go wrong.  Work around this by
wrapping calls to Layout().

2 years agoTake account of changes to default directory for new DCPs (#2058).
Carl Hetherington [Wed, 7 Jul 2021 22:37:33 +0000 (00:37 +0200)]
Take account of changes to default directory for new DCPs (#2058).

Instead of always using the last directory in the new film dialog,
only use it when it was explicitly changed by the user.

2 years agoC++11 tidying.
Carl Hetherington [Wed, 7 Jul 2021 22:17:11 +0000 (00:17 +0200)]
C++11 tidying.

2 years agoTidy a little and use some std::vector instead of raw arrays.
Carl Hetherington [Mon, 5 Jul 2021 13:58:25 +0000 (15:58 +0200)]
Tidy a little and use some std::vector instead of raw arrays.

2 years agoFix alignment.
Carl Hetherington [Mon, 5 Jul 2021 13:22:40 +0000 (15:22 +0200)]
Fix alignment.

2 years agoUse dcp::file_to_string().
Carl Hetherington [Mon, 5 Jul 2021 13:22:07 +0000 (15:22 +0200)]
Use dcp::file_to_string().

2 years agoUse unique_ptr.
Carl Hetherington [Mon, 5 Jul 2021 13:22:00 +0000 (15:22 +0200)]
Use unique_ptr.

2 years agoC++11 tidying.
Carl Hetherington [Mon, 5 Jul 2021 13:21:45 +0000 (15:21 +0200)]
C++11 tidying.

2 years agoC++11 tidying.
Carl Hetherington [Sat, 3 Jul 2021 22:13:39 +0000 (00:13 +0200)]
C++11 tidying.

2 years agoUse std::vector rather than a raw array.
Carl Hetherington [Sat, 3 Jul 2021 20:40:00 +0000 (22:40 +0200)]
Use std::vector rather than a raw array.

2 years agoC++11 tidying.
Carl Hetherington [Sat, 3 Jul 2021 20:35:30 +0000 (22:35 +0200)]
C++11 tidying.

2 years agoDon't abort the update checker thread when one curl_easy_perform fails.
Carl Hetherington [Fri, 2 Jul 2021 21:37:00 +0000 (23:37 +0200)]
Don't abort the update checker thread when one curl_easy_perform fails.

2 years agoFix race.
Carl Hetherington [Wed, 30 Jun 2021 23:22:41 +0000 (01:22 +0200)]
Fix race.

2 years agoC++11 tidying.
Carl Hetherington [Wed, 30 Jun 2021 23:22:37 +0000 (01:22 +0200)]
C++11 tidying.

2 years agoRemove unused variable.
Carl Hetherington [Wed, 30 Jun 2021 23:22:29 +0000 (01:22 +0200)]
Remove unused variable.

2 years agoUpdate dialog layout fixes.
Carl Hetherington [Tue, 29 Jun 2021 21:36:33 +0000 (23:36 +0200)]
Update dialog layout fixes.

2 years agoC++11 tidying.
Carl Hetherington [Tue, 29 Jun 2021 21:36:26 +0000 (23:36 +0200)]
C++11 tidying.

2 years agoFix confusing black padding in GUI dark mode (#2053).
Carl Hetherington [Tue, 29 Jun 2021 13:51:29 +0000 (15:51 +0200)]
Fix confusing black padding in GUI dark mode (#2053).

2 years agoUpdate task bar icon when GUI theme changes (#1986).
Carl Hetherington [Sat, 22 May 2021 20:30:49 +0000 (22:30 +0200)]
Update task bar icon when GUI theme changes (#1986).

We have to keep the StatusDialog around the whole time as it seems
to be the only thing we have that can receive wxEVT_SYS_COLOUR_CHANGED.

2 years agoC++11 tidying.
Carl Hetherington [Sat, 22 May 2021 20:12:56 +0000 (22:12 +0200)]
C++11 tidying.

2 years agoExtract gui_is_dark() to wx_util.
Carl Hetherington [Sat, 22 May 2021 21:33:40 +0000 (23:33 +0200)]
Extract gui_is_dark() to wx_util.

2 years agoMake white/black versions of server icon.
Carl Hetherington [Sat, 22 May 2021 20:01:59 +0000 (22:01 +0200)]
Make white/black versions of server icon.

2 years agoFix incorrect timestamps when exporting as reels (#2052). v2.15.155
Carl Hetherington [Mon, 21 Jun 2021 22:47:25 +0000 (00:47 +0200)]
Fix incorrect timestamps when exporting as reels (#2052).

2 years agoTweak test group name.
Carl Hetherington [Thu, 24 Jun 2021 15:03:33 +0000 (17:03 +0200)]
Tweak test group name.

2 years agoFix incorrect issuer/creator in CPL files.
Carl Hetherington [Thu, 24 Jun 2021 15:03:28 +0000 (17:03 +0200)]
Fix incorrect issuer/creator in CPL files.

2 years agoImprove some error messages.
Carl Hetherington [Wed, 23 Jun 2021 15:17:49 +0000 (17:17 +0200)]
Improve some error messages.

2 years agoAdd some more DecodeError constructors.
Carl Hetherington [Wed, 23 Jun 2021 15:17:45 +0000 (17:17 +0200)]
Add some more DecodeError constructors.

2 years agoC++11 cleanup.
Carl Hetherington [Mon, 21 Jun 2021 22:46:45 +0000 (00:46 +0200)]
C++11 cleanup.

2 years agoRemember the path used for "add files" (#2049).
Carl Hetherington [Mon, 21 Jun 2021 21:56:13 +0000 (23:56 +0200)]
Remember the path used for "add files" (#2049).

Also default to the home directory rather than where DoM was run from,
or something equally unhelpful.

2 years agoUse std::vector for add_files.
Carl Hetherington [Mon, 21 Jun 2021 21:55:05 +0000 (23:55 +0200)]
Use std::vector for add_files.

2 years agoBump libdcp for tags fixes.
Carl Hetherington [Fri, 18 Jun 2021 18:02:55 +0000 (20:02 +0200)]
Bump libdcp for tags fixes.

2 years agoIgnore incoming data when suspended.
Carl Hetherington [Sun, 13 Jun 2021 18:30:15 +0000 (20:30 +0200)]
Ignore incoming data when suspended.

Otherwise, for example, some content can be moved and before
the pieces have been re-created some video can arrive.  Then the
video's position will be calculated using the content's new position,
causing an apparently big gap in the video which is filled in with
black.  These extra black frames cause the video buffers to fill up
without any audio.

2 years agoComment fixes.
Carl Hetherington [Sun, 13 Jun 2021 18:28:17 +0000 (20:28 +0200)]
Comment fixes.

2 years agoUpdated nl_NL translation from Rob van Nieuwkerk.
Carl Hetherington [Sat, 12 Jun 2021 19:07:25 +0000 (21:07 +0200)]
Updated nl_NL translation from Rob van Nieuwkerk.

2 years agoOffer all KDM types no matter what standard is in use.
Carl Hetherington [Sat, 12 Jun 2021 19:04:52 +0000 (21:04 +0200)]
Offer all KDM types no matter what standard is in use.

A user reports that on a Barco system they needed to use a
"DCI Specific" KDM with an Interop DCP.

2 years agoBump libdcp for fixes to language tags.
Carl Hetherington [Sat, 12 Jun 2021 18:53:25 +0000 (20:53 +0200)]
Bump libdcp for fixes to language tags.

2 years agoAllow inkbatch to use a given Inkscape.
Carl Hetherington [Mon, 7 Jun 2021 11:19:47 +0000 (13:19 +0200)]
Allow inkbatch to use a given Inkscape.

2 years agoINKSCAPE -> INKSCAPE_EXPORT.
Carl Hetherington [Mon, 7 Jun 2021 11:19:35 +0000 (13:19 +0200)]
INKSCAPE -> INKSCAPE_EXPORT.

2 years agoFix checking for inkscape binary.
Carl Hetherington [Mon, 7 Jun 2021 11:19:03 +0000 (13:19 +0200)]
Fix checking for inkscape binary.

2 years agoAlign macOS prefs icons to the pixel grid better (#2044).
Carl Hetherington [Mon, 7 Jun 2021 11:18:15 +0000 (13:18 +0200)]
Align macOS prefs icons to the pixel grid better (#2044).

2 years agopot/merge.
Carl Hetherington [Sun, 6 Jun 2021 22:58:35 +0000 (00:58 +0200)]
pot/merge.

2 years agoUse "Colour" not "Colour conversion" as a label name. osx-alignment
Carl Hetherington [Sun, 6 Jun 2021 22:15:48 +0000 (00:15 +0200)]
Use "Colour" not "Colour conversion" as a label name.

In English, at least, the excessive length of this label really
screws up the layout.

2 years agoFix link icons on macOS.
Carl Hetherington [Sun, 6 Jun 2021 22:15:38 +0000 (00:15 +0200)]
Fix link icons on macOS.

2 years agomacOS alignment fix (#2039).
Carl Hetherington [Sun, 6 Jun 2021 22:15:29 +0000 (00:15 +0200)]
macOS alignment fix (#2039).

2 years agoAdd DCPOMATIC_CHOICE_TOP_PAD.
Carl Hetherington [Sun, 6 Jun 2021 22:16:47 +0000 (00:16 +0200)]
Add DCPOMATIC_CHOICE_TOP_PAD.

2 years agomacOS alignment fixes (#2045).
Carl Hetherington [Sun, 6 Jun 2021 22:15:16 +0000 (00:15 +0200)]
macOS alignment fixes (#2045).

2 years agoFix alignment of labels on macOS (#2043).
Carl Hetherington [Sun, 6 Jun 2021 22:15:00 +0000 (00:15 +0200)]
Fix alignment of labels on macOS (#2043).

2 years agoFix paths for changes to environment.
Carl Hetherington [Sun, 6 Jun 2021 21:33:23 +0000 (23:33 +0200)]
Fix paths for changes to environment.

2 years agoFix alignment of mail protocol control (#2042).
Carl Hetherington [Sun, 6 Jun 2021 20:41:59 +0000 (22:41 +0200)]
Fix alignment of mail protocol control (#2042).

2 years agoUse bitmap_path() and wxBITMAP_TYPE_PNG (not _RESOURCE) to allow prefs to work with...
Carl Hetherington [Sun, 6 Jun 2021 10:58:25 +0000 (12:58 +0200)]
Use bitmap_path() and wxBITMAP_TYPE_PNG (not _RESOURCE) to allow prefs to work with in-tree builds.

2 years agoCleanup: use bitmap_path().
Carl Hetherington [Sun, 6 Jun 2021 10:57:45 +0000 (12:57 +0200)]
Cleanup: use bitmap_path().

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.