dcpomatic.git
3 years agoInstall libdcp tags files on Windows.
Carl Hetherington [Sun, 27 Sep 2020 18:05:16 +0000 (20:05 +0200)]
Install libdcp tags files on Windows.

3 years agoInstall libdcp tags files on macOS.
Carl Hetherington [Sun, 27 Sep 2020 18:05:09 +0000 (20:05 +0200)]
Install libdcp tags files on macOS.

3 years agoAdapt for new libdcp (fixing large compiler resource requirements).
Carl Hetherington [Sun, 27 Sep 2020 17:35:12 +0000 (19:35 +0200)]
Adapt for new libdcp (fixing large compiler resource requirements).

Also adjust Linux resource-finding code to juse look for stuff
relative to the executable's location.

3 years agoBump libdcp trying to reduce RAM needed for build.
Carl Hetherington [Sat, 26 Sep 2020 09:29:22 +0000 (11:29 +0200)]
Bump libdcp trying to reduce RAM needed for build.

3 years agoBump libdcp for macOS build fix.
Carl Hetherington [Sat, 26 Sep 2020 09:22:44 +0000 (11:22 +0200)]
Bump libdcp for macOS build fix.

3 years agoIt's not 7.1 until we have 12 channels. v2.15.103
Carl Hetherington [Fri, 25 Sep 2020 22:22:08 +0000 (00:22 +0200)]
It's not 7.1 until we have 12 channels.

3 years agoUpdate test ref for new metadata.
Carl Hetherington [Fri, 25 Sep 2020 22:21:21 +0000 (00:21 +0200)]
Update test ref for new metadata.

3 years agoAdd NamedChannel and use it to hide the never-used channels
Carl Hetherington [Fri, 25 Sep 2020 20:51:18 +0000 (22:51 +0200)]
Add NamedChannel and use it to hide the never-used channels
when mapping into a DCP.

3 years agoAdd missing try/catch to a call to getDeviceInfo.
Carl Hetherington [Fri, 25 Sep 2020 19:04:06 +0000 (21:04 +0200)]
Add missing try/catch to a call to getDeviceInfo.

3 years agoUse the appropriate RtAudio exception (though I'm not sure if this
Carl Hetherington [Fri, 25 Sep 2020 19:03:23 +0000 (21:03 +0200)]
Use the appropriate RtAudio exception (though I'm not sure if this
still necessary).

3 years agoRemove unnecessary explicit.
Carl Hetherington [Fri, 25 Sep 2020 14:37:49 +0000 (16:37 +0200)]
Remove unnecessary explicit.

3 years agoFix crash now that some audio channels are definitely unused.
Carl Hetherington [Wed, 23 Sep 2020 18:16:12 +0000 (20:16 +0200)]
Fix crash now that some audio channels are definitely unused.

3 years agoUndefine Status that somebody decided to put in the global namespace.
Carl Hetherington [Wed, 23 Sep 2020 15:35:40 +0000 (17:35 +0200)]
Undefine Status that somebody decided to put in the global namespace.

3 years agoMissing #include.
Carl Hetherington [Wed, 23 Sep 2020 15:19:24 +0000 (17:19 +0200)]
Missing #include.

3 years agoAdd audio language configuration and pass it to libdcp.
Carl Hetherington [Wed, 23 Sep 2020 15:05:01 +0000 (17:05 +0200)]
Add audio language configuration and pass it to libdcp.

3 years agoBuild fixes.
Carl Hetherington [Wed, 23 Sep 2020 15:04:53 +0000 (17:04 +0200)]
Build fixes.

3 years agoFix some vertical alignment.
Carl Hetherington [Wed, 23 Sep 2020 12:48:35 +0000 (14:48 +0200)]
Fix some vertical alignment.

3 years agoBump libdcp for new API stuff.
Carl Hetherington [Wed, 23 Sep 2020 10:22:38 +0000 (12:22 +0200)]
Bump libdcp for new API stuff.

3 years agoAdd new .xsd files for Windows.
Carl Hetherington [Mon, 21 Sep 2020 20:23:24 +0000 (22:23 +0200)]
Add new .xsd files for Windows.

3 years agoBump libdcp/libsub.
Carl Hetherington [Mon, 21 Sep 2020 20:23:12 +0000 (22:23 +0200)]
Bump libdcp/libsub.

3 years agoSupport CPL metadata.
Carl Hetherington [Fri, 4 Sep 2020 15:24:12 +0000 (17:24 +0200)]
Support CPL metadata.

3 years agoAdapt for changes to libdcp API.
Carl Hetherington [Fri, 4 Sep 2020 07:29:41 +0000 (09:29 +0200)]
Adapt for changes to libdcp API.

3 years agoAdd missing dcpomatic2_playlist.bat.
Carl Hetherington [Tue, 22 Sep 2020 07:38:08 +0000 (09:38 +0200)]
Add missing dcpomatic2_playlist.bat.

3 years agoAdd missing dcpomatic2_create.bat.
Carl Hetherington [Tue, 22 Sep 2020 05:49:00 +0000 (07:49 +0200)]
Add missing dcpomatic2_create.bat.

3 years agoAdd missing dcpomatic2_cli.bat.
Carl Hetherington [Mon, 21 Sep 2020 23:13:12 +0000 (01:13 +0200)]
Add missing dcpomatic2_cli.bat.

3 years agoAdd missing dcpomatic2_kdm_cli_debug.bat.
Carl Hetherington [Mon, 21 Sep 2020 22:54:03 +0000 (00:54 +0200)]
Add missing dcpomatic2_kdm_cli_debug.bat.

3 years agoTry to fix Windows debug build.
Carl Hetherington [Mon, 21 Sep 2020 22:27:00 +0000 (00:27 +0200)]
Try to fix Windows debug build.

3 years agoMissing bits of packaging for combiner on Linux.
Carl Hetherington [Mon, 21 Sep 2020 17:53:00 +0000 (19:53 +0200)]
Missing bits of packaging for combiner on Linux.

3 years agoFix --standard flag to dcpomatic2_cli (github #9).
Carl Hetherington [Mon, 21 Sep 2020 17:49:31 +0000 (19:49 +0200)]
Fix --standard flag to dcpomatic2_cli (github #9).

Forward-ported-from-commit: c1e8c8638bcb3b4c9d90adc3719f38fa7bf81be9
Forward-ported-from-branch: master

3 years agoFix windows installer. combine v2.15.102
Carl Hetherington [Sat, 19 Sep 2020 22:24:31 +0000 (00:24 +0200)]
Fix windows installer.

3 years agoWe only need Libre Baskerville when running update on Linux.
Carl Hetherington [Sat, 19 Sep 2020 21:41:45 +0000 (23:41 +0200)]
We only need Libre Baskerville when running update on Linux.

3 years agoUse sensitivity to disallow empty template names, rather than
Carl Hetherington [Wed, 16 Sep 2020 22:05:09 +0000 (00:05 +0200)]
Use sensitivity to disallow empty template names, rather than
giving an error after the fact.

3 years agoAdd dcpomatic_combine tool (#1245).
Carl Hetherington [Thu, 10 Sep 2020 23:07:46 +0000 (01:07 +0200)]
Add dcpomatic_combine tool (#1245).

3 years agoDirPicker tweaks:
Carl Hetherington [Thu, 10 Sep 2020 23:23:58 +0000 (01:23 +0200)]
DirPicker tweaks:
  - fix vertical padding so that folder name lines up with label.
  - use italic for the folder name.
  - use the full path for the folder name.

3 years agoMake it easier to extend the Windows installer.
Carl Hetherington [Thu, 17 Sep 2020 22:54:38 +0000 (00:54 +0200)]
Make it easier to extend the Windows installer.

3 years agoRemove Windows XP support.
Carl Hetherington [Thu, 17 Sep 2020 22:43:09 +0000 (00:43 +0200)]
Remove Windows XP support.

3 years agoswaroop: remove from Windows installer.
Carl Hetherington [Thu, 17 Sep 2020 22:21:01 +0000 (00:21 +0200)]
swaroop: remove from Windows installer.

3 years agoDon't allow creation of a new film with no name. Otherwise we try
Carl Hetherington [Mon, 14 Sep 2020 21:07:34 +0000 (23:07 +0200)]
Don't allow creation of a new film with no name.  Otherwise we try
to write metadata to the "create in folder" directory, which throws
an uncaught exception if the specified directory is unwriteable.

If we have a name then DoM tries to create the directory with that name,
which fails more elegantly and with a nicer error.

3 years agoRename shared_path -> resources_path.
Carl Hetherington [Mon, 14 Sep 2020 11:09:04 +0000 (13:09 +0200)]
Rename shared_path -> resources_path.

3 years agoAdd xsd_path() and use it to fix access to .xsd files on Linux (#1830).
Carl Hetherington [Mon, 14 Sep 2020 11:04:16 +0000 (13:04 +0200)]
Add xsd_path() and use it to fix access to .xsd files on Linux (#1830).

3 years agoMore fixes for wxWidgets 3.1.x.
Carl Hetherington [Fri, 11 Sep 2020 19:23:37 +0000 (21:23 +0200)]
More fixes for wxWidgets 3.1.x.

3 years agoRemove support for Windows XP.
Carl Hetherington [Sat, 12 Sep 2020 21:19:19 +0000 (23:19 +0200)]
Remove support for Windows XP.

3 years agoFixes for building with newer wxWidgets.
Carl Hetherington [Fri, 4 Sep 2020 16:15:23 +0000 (18:15 +0200)]
Fixes for building with newer wxWidgets.

3 years agoFix assertion with wxWidgets 3.1.
Carl Hetherington [Thu, 10 Sep 2020 12:56:18 +0000 (14:56 +0200)]
Fix assertion with wxWidgets 3.1.

3 years agoFix incorrect sense of title parameter.
Carl Hetherington [Tue, 8 Sep 2020 19:37:32 +0000 (21:37 +0200)]
Fix incorrect sense of title parameter.

3 years agoUse wxString for EditableListColumn.
Carl Hetherington [Tue, 8 Sep 2020 19:37:18 +0000 (21:37 +0200)]
Use wxString for EditableListColumn.

3 years agoUpdated cs_CZ translation from Tomáš Begeni. v2.15.101
Carl Hetherington [Sat, 5 Sep 2020 21:01:59 +0000 (23:01 +0200)]
Updated cs_CZ translation from Tomáš Begeni.

3 years agoUse a unique header guard.
Carl Hetherington [Thu, 3 Sep 2020 13:32:11 +0000 (15:32 +0200)]
Use a unique header guard.

3 years agoBuild fixes for Boost >= 1.73
Carl Hetherington [Thu, 27 Aug 2020 20:37:32 +0000 (20:37 +0000)]
Build fixes for Boost >= 1.73

Forward-ported-from: d1e9749ca290673639a49d693a8fe5c6557cc2de

3 years agoAdd ubuntu 20.10.
Carl Hetherington [Mon, 31 Aug 2020 22:22:06 +0000 (00:22 +0200)]
Add ubuntu 20.10.

3 years agoFix login denied (67) errors when trying to download certificates v2.15.100
Carl Hetherington [Mon, 31 Aug 2020 12:15:40 +0000 (14:15 +0200)]
Fix login denied (67) errors when trying to download certificates
from Dolby.

3 years agoTry to fix crashes when things go wrong with getDeviceInfo. v2.15.99
Carl Hetherington [Sat, 29 Aug 2020 18:33:45 +0000 (20:33 +0200)]
Try to fix crashes when things go wrong with getDeviceInfo.

3 years agoContent changes should mark the film dirty (#1810).
Carl Hetherington [Wed, 26 Aug 2020 09:55:56 +0000 (11:55 +0200)]
Content changes should mark the film dirty (#1810).

3 years agoTry to stop strange subtitle area displays by preventing re-entrancy to try_to_load_a...
Carl Hetherington [Wed, 26 Aug 2020 09:40:47 +0000 (11:40 +0200)]
Try to stop strange subtitle area displays by preventing re-entrancy to try_to_load_analysis (#1813).

3 years agoFix error string.
Carl Hetherington [Tue, 25 Aug 2020 22:39:17 +0000 (00:39 +0200)]
Fix error string.

3 years agoBump libdcp for new method.
Carl Hetherington [Tue, 25 Aug 2020 21:13:14 +0000 (23:13 +0200)]
Bump libdcp for new method.

3 years agoTry to clean up the mess of exporting subtitles when there is
Carl Hetherington [Tue, 25 Aug 2020 20:51:47 +0000 (22:51 +0200)]
Try to clean up the mess of exporting subtitles when there is
one file vs many files (multiple reels or fonts).

3 years agoAdd option to export Interop subs with or without the font file / reference.
Carl Hetherington [Tue, 25 Aug 2020 20:00:06 +0000 (22:00 +0200)]
Add option to export Interop subs with or without the font file / reference.

3 years agoMove the code to find Liberation into util.cc.
Carl Hetherington [Tue, 25 Aug 2020 19:58:48 +0000 (21:58 +0200)]
Move the code to find Liberation into util.cc.

3 years agoRename export dialogue to export video.
Carl Hetherington [Tue, 25 Aug 2020 19:06:53 +0000 (21:06 +0200)]
Rename export dialogue to export video.

3 years agoMove subtitle export to its own dialogue.
Carl Hetherington [Tue, 25 Aug 2020 19:02:00 +0000 (21:02 +0200)]
Move subtitle export to its own dialogue.

3 years agoTidy up resource management of FFmpegFileEncoders so that they
Carl Hetherington [Mon, 17 Aug 2020 14:42:46 +0000 (16:42 +0200)]
Tidy up resource management of FFmpegFileEncoders so that they
are cleaned up correctly when an error occurs.

Adapted from dfac61382f1719f0a879747de43cbc5f9115c2d7 in master.

3 years agoReport better errors when the butler dies.
Carl Hetherington [Mon, 17 Aug 2020 13:44:58 +0000 (15:44 +0200)]
Report better errors when the butler dies.

Adapted from d23f55d8cd73adda823d0a2fcabc129b8845a81 in master.

3 years agoFix refusal to start another audio analysis job after cancelling one. v2.15.98
Carl Hetherington [Fri, 14 Aug 2020 18:28:21 +0000 (20:28 +0200)]
Fix refusal to start another audio analysis job after cancelling one.

3 years agoMissing copy of icons to .app.
Carl Hetherington [Fri, 14 Aug 2020 18:12:28 +0000 (20:12 +0200)]
Missing copy of icons to .app.

3 years agoMake graphics/update fail on error. v2.15.97
Carl Hetherington [Fri, 14 Aug 2020 14:20:55 +0000 (16:20 +0200)]
Make graphics/update fail on error.

3 years agoAdd missing locations icon for macOS player preferences.
Carl Hetherington [Fri, 14 Aug 2020 14:20:45 +0000 (16:20 +0200)]
Add missing locations icon for macOS player preferences.

3 years agoFix white space.
Carl Hetherington [Fri, 14 Aug 2020 13:50:03 +0000 (15:50 +0200)]
Fix white space.

3 years agowxEVT_CREATE appears never to arrive on Windows, so change things v2.15.96
Carl Hetherington [Sat, 8 Aug 2020 22:03:11 +0000 (00:03 +0200)]
wxEVT_CREATE appears never to arrive on Windows, so change things
to create the OpenGL thread on the first paint request.

3 years agoRemove old comment.
Carl Hetherington [Sat, 8 Aug 2020 22:02:57 +0000 (00:02 +0200)]
Remove old comment.

3 years agoDon't call OpenGL functions until the wxGLContext has been created.
Carl Hetherington [Sat, 8 Aug 2020 22:02:25 +0000 (00:02 +0200)]
Don't call OpenGL functions until the wxGLContext has been created.

3 years agoAdd strangely absent private:
Carl Hetherington [Fri, 7 Aug 2020 19:38:49 +0000 (21:38 +0200)]
Add strangely absent private:

3 years agoFix layout bug where the stuff in the content panel would be completely
Carl Hetherington [Fri, 7 Aug 2020 19:37:35 +0000 (21:37 +0200)]
Fix layout bug where the stuff in the content panel would be completely
hidden in some cases (seen on Linux only, I think).

wxDisplay::GetFromWindow sometimes returns -1 (perhaps when multiple
monitors are connected) and we have to set the splitter position
in this case.

3 years agoTone down the disk startup warning a little.
Carl Hetherington [Fri, 7 Aug 2020 11:25:01 +0000 (13:25 +0200)]
Tone down the disk startup warning a little.

3 years agoUse a much bigger block size when calling fwrite(). Each call to fwrite()
Carl Hetherington [Thu, 6 Aug 2020 22:11:38 +0000 (00:11 +0200)]
Use a much bigger block size when calling fwrite().  Each call to fwrite()
writes a few (often around 4) blocks of (I think) directory data to the
drive, so if you only fwrite() one block it ends up writing 1 block of
"payload" and 4 blocks of "admin".  Using bigger blocks makes it faster;
an even bigger block than this makes it a little faster still, but not
significantly.

The extra block writing is seemingly triggered by fwrite() calling
ext4_block_cache_write_back(..., 0). A better fix is probably to call
this another way, at the end of the file copy.

3 years agoCheck that we have a connection to the disk writer before starting to use it in earnest.
Carl Hetherington [Thu, 6 Aug 2020 22:10:59 +0000 (00:10 +0200)]
Check that we have a connection to the disk writer before starting to use it in earnest.

3 years agoFix typo in comment.
Carl Hetherington [Thu, 6 Aug 2020 22:08:17 +0000 (00:08 +0200)]
Fix typo in comment.

3 years agoReduce width of information text in the copy-to-drive job.
Carl Hetherington [Thu, 6 Aug 2020 22:07:46 +0000 (00:07 +0200)]
Reduce width of information text in the copy-to-drive job.

3 years agoTry to fix -Wparentheses error on Centos 8.
Carl Hetherington [Thu, 6 Aug 2020 07:38:23 +0000 (09:38 +0200)]
Try to fix -Wparentheses error on Centos 8.

3 years agoAllow export with one audio stream per channel. v2.15.95
Carl Hetherington [Wed, 5 Aug 2020 16:32:59 +0000 (18:32 +0200)]
Allow export with one audio stream per channel.

3 years agoFix thinko in eaedff2a7877fa4b560e0c65ac13ed3dad9437e5
Carl Hetherington [Wed, 5 Aug 2020 09:47:18 +0000 (11:47 +0200)]
Fix thinko in eaedff2a7877fa4b560e0c65ac13ed3dad9437e5

3 years agoFix typo.
Carl Hetherington [Tue, 4 Aug 2020 22:20:49 +0000 (00:20 +0200)]
Fix typo.

3 years agoRemove some debugging code.
Carl Hetherington [Tue, 4 Aug 2020 22:19:55 +0000 (00:19 +0200)]
Remove some debugging code.

3 years agoAdd some more OpenGL debugging.
Carl Hetherington [Tue, 4 Aug 2020 22:06:35 +0000 (00:06 +0200)]
Add some more OpenGL debugging.

3 years agoTry to improve layout of the 'write to' radios in the KDM dialog (especially on Windows).
Carl Hetherington [Tue, 4 Aug 2020 22:00:48 +0000 (00:00 +0200)]
Try to improve layout of the 'write to' radios in the KDM dialog (especially on Windows).

3 years agoFix missing fonts in splash.png and try to prevent graphics update happening with...
Carl Hetherington [Tue, 4 Aug 2020 21:59:19 +0000 (23:59 +0200)]
Fix missing fonts in splash.png and try to prevent graphics update happening with missing fonts.

3 years agoFix flickering of timecode values on Windows.
Carl Hetherington [Tue, 4 Aug 2020 21:40:45 +0000 (23:40 +0200)]
Fix flickering of timecode values on Windows.

3 years agoFix slightly chopped-off subtitles when there are borders.
Carl Hetherington [Mon, 3 Aug 2020 21:08:09 +0000 (23:08 +0200)]
Fix slightly chopped-off subtitles when there are borders.

3 years agoAdd unit test for pulldown detection.
Carl Hetherington [Mon, 3 Aug 2020 07:51:43 +0000 (09:51 +0200)]
Add unit test for pulldown detection.

3 years agoFix number of frames in the pulldown check.
Carl Hetherington [Mon, 3 Aug 2020 07:51:27 +0000 (09:51 +0200)]
Fix number of frames in the pulldown check.

3 years agoFix incorrect string find logic.
Carl Hetherington [Mon, 3 Aug 2020 07:51:12 +0000 (09:51 +0200)]
Fix incorrect string find logic.

3 years agoMerge branch 'v2.15.x' of ssh://git.carlh.net/home/carl/git/dcpomatic into v2.15.x
Carl Hetherington [Mon, 3 Aug 2020 07:16:27 +0000 (09:16 +0200)]
Merge branch 'v2.15.x' of ssh://git.carlh.net/home/carl/git/dcpomatic into v2.15.x

3 years agoDon't terminate if a non-DCP directory is given to Open.
Carl Hetherington [Sun, 2 Aug 2020 21:31:59 +0000 (23:31 +0200)]
Don't terminate if a non-DCP directory is given to Open.

3 years agoDetect soft 2:3 pulldown (telecine) files and decode them at 23.976.
Carl Hetherington [Sun, 2 Aug 2020 20:24:05 +0000 (22:24 +0200)]
Detect soft 2:3 pulldown (telecine) files and decode them at 23.976.

DVD rips from NTSC DVDs are sometimes (always?) encoded using
soft 2:3 pulldown.  The video frames are actually 23.976 but
FFmpeg detects them as 29.97.  With the current approach of the video
decoder ignoring most PTSs and assuming a constant frame rate
it is vital that the file contains the number of frames per second
that the detected frame rate predicts.

This fixes large sync errors with NTSC DVD rips (#1790).

3 years agoTweak link button width on GTK3.
Carl Hetherington [Sun, 2 Aug 2020 20:05:09 +0000 (22:05 +0200)]
Tweak link button width on GTK3.

3 years agoSome tweaks to examine.py
Carl Hetherington [Sat, 1 Aug 2020 22:03:21 +0000 (00:03 +0200)]
Some tweaks to examine.py

3 years agoFix crash on too-early update of closed caption dialog.
Carl Hetherington [Thu, 30 Jul 2020 23:04:43 +0000 (01:04 +0200)]
Fix crash on too-early update of closed caption dialog.

3 years agoDon't display all possible channel checkboxes while the analysis v2.15.94
Carl Hetherington [Wed, 29 Jul 2020 20:30:38 +0000 (22:30 +0200)]
Don't display all possible channel checkboxes while the analysis
is running as clicking the higher ones will cause an assertion
failure.

3 years agoFix memory leak which also causes strange flickering in the audio
Carl Hetherington [Wed, 29 Jul 2020 20:29:45 +0000 (22:29 +0200)]
Fix memory leak which also causes strange flickering in the audio
analysis window while the analysis is running.

3 years agoFix bugs in thread termination causing occasional pthread
Carl Hetherington [Wed, 29 Jul 2020 18:22:54 +0000 (20:22 +0200)]
Fix bugs in thread termination causing occasional pthread
assertion failures.

Before this, it was possible for J2KEncoder::terminate_threads()
to finish without terminating all threads if the thread _running_
terminate_threads() was itself interrupt()ed.

This is because the thread_group::join_all() in terminate_threads()
is an interruption point, so it was possible it not to complete
but instead to throw interrupted_exception.  Then the owning
J2KEncoder would be torn down but the threads would still be running,
causing use-after-frees.

This commit adds some boost::this_thread::disable_interruption
objects to ensure that the owning thread is not interrupted while
it is being destroyed.

Also tidy up code that does this stuff, assuming that it's safe
to not call thread::joinable but instead do

thread.interrupt();
try {
  thread.join();
} catch (...) {}