dcpomatic.git
2 years agoAlways block waiting for audio when exporting. v2.15.169
Carl Hetherington [Fri, 15 Oct 2021 20:33:46 +0000 (22:33 +0200)]
Always block waiting for audio when exporting.

Otherwise if there is non available we'll insert silence and potentially
push the audio out of sync (late).  May help with #2098.

2 years agoUse an enum instead of a bool to specify blocking/non-blocking.
Carl Hetherington [Fri, 15 Oct 2021 20:26:47 +0000 (22:26 +0200)]
Use an enum instead of a bool to specify blocking/non-blocking.

2 years agoAdd comment.
Carl Hetherington [Fri, 15 Oct 2021 20:16:13 +0000 (22:16 +0200)]
Add comment.

2 years agoIgnore audio streams that fall too far behind (#2101).
Carl Hetherington [Thu, 14 Oct 2021 22:30:44 +0000 (00:30 +0200)]
Ignore audio streams that fall too far behind (#2101).

2 years agoFix test logging setup to actually work.
Carl Hetherington [Thu, 14 Oct 2021 22:30:27 +0000 (00:30 +0200)]
Fix test logging setup to actually work.

2 years agoAdd a failing test.
Carl Hetherington [Tue, 12 Oct 2021 22:16:15 +0000 (00:16 +0200)]
Add a failing test.

2 years agoCleanup some unused usings.
Carl Hetherington [Tue, 12 Oct 2021 22:16:10 +0000 (00:16 +0200)]
Cleanup some unused usings.

2 years agoRemove manual stuff about the hidden upmixers.
Carl Hetherington [Wed, 13 Oct 2021 21:56:32 +0000 (23:56 +0200)]
Remove manual stuff about the hidden upmixers.

2 years agoDon't allow negative trims to be set up via changes to play length (#2105). v2.15.168
Carl Hetherington [Wed, 13 Oct 2021 19:21:27 +0000 (21:21 +0200)]
Don't allow negative trims to be set up via changes to play length (#2105).

2 years agoAdd some asserts to check for negative trims.
Carl Hetherington [Wed, 13 Oct 2021 19:21:10 +0000 (21:21 +0200)]
Add some asserts to check for negative trims.

2 years agoIgnore errors from avcodec_send_packet.
Carl Hetherington [Wed, 13 Oct 2021 13:50:13 +0000 (15:50 +0200)]
Ignore errors from avcodec_send_packet.

After seeking it appears that we often get irrelevant errors from this
method.  ffplay.c seems to ignore them, and this commit means that
we do too (just logging them).

I think these errors during a non-seeking "encoding" run could be
cause for concern; perhaps we should take more note of them in that
case.

2 years agoIgnore .AppleDouble folders inside DCPs.
Carl Hetherington [Tue, 12 Oct 2021 12:19:13 +0000 (14:19 +0200)]
Ignore .AppleDouble folders inside DCPs.

2 years agoHopefully fix race between thread finishing and cleanup being run (#2100).
Carl Hetherington [Mon, 11 Oct 2021 22:13:25 +0000 (00:13 +0200)]
Hopefully fix race between thread finishing and cleanup being run (#2100).

2 years agoDon't throw an error when the Butler says it is finished (#2097).
Carl Hetherington [Mon, 11 Oct 2021 08:51:43 +0000 (10:51 +0200)]
Don't throw an error when the Butler says it is finished (#2097).

2 years agoCleanup: use enum class.
Carl Hetherington [Mon, 11 Oct 2021 10:27:22 +0000 (12:27 +0200)]
Cleanup: use enum class.

2 years agoFix a test reference to account for windows filename slashes.
Carl Hetherington [Sun, 10 Oct 2021 10:18:11 +0000 (12:18 +0200)]
Fix a test reference to account for windows filename slashes.

2 years agoDon't ignore font settings for DCP subtitles (#2074). v2.15.167
Carl Hetherington [Fri, 8 Oct 2021 21:31:24 +0000 (23:31 +0200)]
Don't ignore font settings for DCP subtitles (#2074).

2 years agoAdd comment.
Carl Hetherington [Fri, 8 Oct 2021 21:30:49 +0000 (23:30 +0200)]
Add comment.

2 years agoCleanup some unused using statements and other bits.
Carl Hetherington [Fri, 8 Oct 2021 21:29:32 +0000 (23:29 +0200)]
Cleanup some unused using statements and other bits.

2 years agoBump libdcp to 1.8.2 for fix when adding KDMs to VFs.
Carl Hetherington [Fri, 8 Oct 2021 10:54:15 +0000 (12:54 +0200)]
Bump libdcp to 1.8.2 for fix when adding KDMs to VFs.

2 years agoMore logging in the DCPExaminer.
Carl Hetherington [Thu, 7 Oct 2021 19:00:11 +0000 (21:00 +0200)]
More logging in the DCPExaminer.

2 years agoC++11 tidying.
Carl Hetherington [Thu, 7 Oct 2021 18:59:35 +0000 (20:59 +0200)]
C++11 tidying.

2 years agoUpdate manual per #2068.
Carl Hetherington [Fri, 8 Oct 2021 23:45:10 +0000 (01:45 +0200)]
Update manual per #2068.

2 years agoSome manual tidying.
Carl Hetherington [Thu, 7 Oct 2021 21:05:19 +0000 (23:05 +0200)]
Some manual tidying.

2 years agoFix manual build with libdcp dependency.
Carl Hetherington [Tue, 5 Oct 2021 23:31:49 +0000 (01:31 +0200)]
Fix manual build with libdcp dependency.

2 years agoBump libdcp (with corresponding libsub bump) for small verification fix.
Carl Hetherington [Thu, 7 Oct 2021 20:53:59 +0000 (22:53 +0200)]
Bump libdcp (with corresponding libsub bump) for small verification fix.

2 years agoAdd some details about verification to the manual.
Carl Hetherington [Tue, 5 Oct 2021 23:16:28 +0000 (01:16 +0200)]
Add some details about verification to the manual.

2 years agoDon't scale chroma subsampled images to sizes that don't align with the subsampling... v2.15.166
Carl Hetherington [Sun, 3 Oct 2021 19:22:14 +0000 (21:22 +0200)]
Don't scale chroma subsampled images to sizes that don't align with the subsampling (#1872).

There's a slightly odd effect when scaling e.g. YVU420 images to
odd and then even widths - there's a small but visible luminance
shift.  I don't know why this happens, but keeping the scaling
sizes locked to the subsampling seems to help.

2 years agoDifferentiate requested and actual crop.
Carl Hetherington [Sun, 3 Oct 2021 18:53:44 +0000 (20:53 +0200)]
Differentiate requested and actual crop.

This is so we limit cropping to what is possible considering
chroma subsampling.

2 years agoAdd PixelQuanta to VideoContent.
Carl Hetherington [Sun, 3 Oct 2021 00:02:12 +0000 (02:02 +0200)]
Add PixelQuanta to VideoContent.

2 years agoDon't build Disk Writer for appimage.
Carl Hetherington [Sun, 3 Oct 2021 21:05:56 +0000 (23:05 +0200)]
Don't build Disk Writer for appimage.

Threads like
https://discourse.appimage.org/t/nosuid-fuse-mount-option-deactivates-capabilities/1652/1
suggest that using capabilities with AppImage is not possible, so making
things work will be a bit more work than I want to get into before
2.16.0.

2 years agoUpdated it_IT translation from Riccardo Mantani.
Carl Hetherington [Sun, 3 Oct 2021 20:54:31 +0000 (22:54 +0200)]
Updated it_IT translation from Riccardo Mantani.

2 years agoRequire libsub v1.6.0.
Carl Hetherington [Sun, 3 Oct 2021 20:32:51 +0000 (22:32 +0200)]
Require libsub v1.6.0.

2 years agoRequire libdcp v1.8.0 to fix SMPTE sub XML namespaces (#2061).
Carl Hetherington [Sun, 3 Oct 2021 20:29:35 +0000 (22:29 +0200)]
Require libdcp v1.8.0 to fix SMPTE sub XML namespaces (#2061).

2 years agoRemove unused using statement.
Carl Hetherington [Sun, 3 Oct 2021 20:14:21 +0000 (22:14 +0200)]
Remove unused using statement.

2 years agoAlways call ::draw() even when we have no image.
Carl Hetherington [Sun, 3 Oct 2021 19:46:07 +0000 (21:46 +0200)]
Always call ::draw() even when we have no image.

Otherwise the screen doesn't get cleared properly when no film is
loaded.

2 years agoRemove unused parameters.
Carl Hetherington [Sun, 3 Oct 2021 19:45:12 +0000 (21:45 +0200)]
Remove unused parameters.

2 years agoFix subtitle positioning and centering of the DCP frame in the window. v2.15.165
Carl Hetherington [Fri, 1 Oct 2021 19:10:24 +0000 (21:10 +0200)]
Fix subtitle positioning and centering of the DCP frame in the window.

Also tidy up a bit with the Rectangle class.

2 years agoChange glLineWidth from 2.0 -> 1.0. v2.15.164
Carl Hetherington [Thu, 30 Sep 2021 22:37:33 +0000 (00:37 +0200)]
Change glLineWidth from 2.0 -> 1.0.

Apparently a line width of greater than 1.0 is not allowed
in some versions of OpenGL.

2 years agoMissing check_gl_error() calls.
Carl Hetherington [Thu, 30 Sep 2021 22:37:14 +0000 (00:37 +0200)]
Missing check_gl_error() calls.

2 years agoOnly support GLVideoView when building with wxWidgets >= 3.1.0.
Carl Hetherington [Wed, 29 Sep 2021 10:33:08 +0000 (12:33 +0200)]
Only support GLVideoView when building with wxWidgets >= 3.1.0.

2 years agoFix tests. v2.15.163
Carl Hetherington [Mon, 27 Sep 2021 21:58:27 +0000 (23:58 +0200)]
Fix tests.

2 years agoMerge branch 'better-gl' into v2.15.x
Carl Hetherington [Mon, 27 Sep 2021 11:43:19 +0000 (13:43 +0200)]
Merge branch 'better-gl' into v2.15.x

This changes the GL video view to use more modern GL (GLSL etc.)  It
also special-cases JPEG2000 video playback and does scaling and
colourspace conversion on the GPU.

2 years agoTest fixes. better-gl
Carl Hetherington [Thu, 23 Sep 2021 21:54:32 +0000 (23:54 +0200)]
Test fixes.

2 years agoMake merge return the right alignment even if it's not doing anything.
Carl Hetherington [Thu, 23 Sep 2021 21:54:28 +0000 (23:54 +0200)]
Make merge return the right alignment even if it's not doing anything.

2 years agoCheck that the image used to make a Cairo::ImageSurface is the right alignment and...
Carl Hetherington [Thu, 23 Sep 2021 21:54:13 +0000 (23:54 +0200)]
Check that the image used to make a Cairo::ImageSurface is the right alignment and pixel format.

2 years agoVarious alignment tidying/fixups.
Carl Hetherington [Wed, 22 Sep 2021 22:09:47 +0000 (00:09 +0200)]
Various alignment tidying/fixups.

2 years agoRemove unused using
Carl Hetherington [Wed, 22 Sep 2021 22:07:26 +0000 (00:07 +0200)]
Remove unused using

2 years agoUpdate design doc.
Carl Hetherington [Wed, 22 Sep 2021 22:06:23 +0000 (00:06 +0200)]
Update design doc.

2 years agoReplace aligned bool with enum Alignment.
Carl Hetherington [Wed, 15 Sep 2021 21:36:21 +0000 (23:36 +0200)]
Replace aligned bool with enum Alignment.

2 years agoVarious alignment adjustments.
Carl Hetherington [Tue, 14 Sep 2021 23:00:33 +0000 (01:00 +0200)]
Various alignment adjustments.

2 years agoSome const correctness.
Carl Hetherington [Tue, 14 Sep 2021 22:42:15 +0000 (00:42 +0200)]
Some const correctness.

2 years agoAllow RGB24 in textures.
Carl Hetherington [Tue, 14 Sep 2021 19:25:18 +0000 (21:25 +0200)]
Allow RGB24 in textures.

2 years agoSupport subs and tidy up a few things.
Carl Hetherington [Tue, 14 Sep 2021 19:11:56 +0000 (21:11 +0200)]
Support subs and tidy up a few things.

2 years agoAdd accessor for _text.
Carl Hetherington [Mon, 13 Sep 2021 23:36:50 +0000 (01:36 +0200)]
Add accessor for _text.

2 years agoSetup Butler::_prepare_only_proxy on construction.
Carl Hetherington [Mon, 13 Sep 2021 23:36:38 +0000 (01:36 +0200)]
Setup Butler::_prepare_only_proxy on construction.

2 years agoRename image -> video.
Carl Hetherington [Mon, 13 Sep 2021 19:37:05 +0000 (21:37 +0200)]
Rename image -> video.

2 years agoMove some stuff inside Texture.
Carl Hetherington [Mon, 13 Sep 2021 11:57:20 +0000 (13:57 +0200)]
Move some stuff inside Texture.

2 years agoAdd basic Texture wrapper for a GL texture.
Carl Hetherington [Sun, 12 Sep 2021 23:13:30 +0000 (01:13 +0200)]
Add basic Texture wrapper for a GL texture.

2 years agoRename _size -> _video_size
Carl Hetherington [Sun, 12 Sep 2021 22:52:16 +0000 (00:52 +0200)]
Rename _size -> _video_size

2 years agoTweak some comments.
Carl Hetherington [Sun, 12 Sep 2021 22:25:59 +0000 (00:25 +0200)]
Tweak some comments.

2 years agoExtract indices array and make some offset constants.
Carl Hetherington [Sun, 12 Sep 2021 22:21:44 +0000 (00:21 +0200)]
Extract indices array and make some offset constants.

2 years agoRename _texture -> _video_texture.
Carl Hetherington [Sun, 12 Sep 2021 22:06:59 +0000 (00:06 +0200)]
Rename _texture -> _video_texture.

2 years agoWhen the player is used in OpenGL mode, pass unscaled XYZ data through to the shader...
Carl Hetherington [Sat, 11 Sep 2021 16:52:05 +0000 (18:52 +0200)]
When the player is used in OpenGL mode, pass unscaled XYZ data through to the shader and do colourspace conversion there.

2 years agoFix GL information fetching.
Carl Hetherington [Sat, 11 Sep 2021 23:26:47 +0000 (01:26 +0200)]
Fix GL information fetching.

2 years agoC++11 tidying.
Carl Hetherington [Tue, 8 Jun 2021 22:17:13 +0000 (00:17 +0200)]
C++11 tidying.

2 years agoTidy ownership/lifetime of GLVideoView to fix crashes on close.
Carl Hetherington [Sat, 11 Sep 2021 23:09:03 +0000 (01:09 +0200)]
Tidy ownership/lifetime of GLVideoView to fix crashes on close.

2 years agoRe-work OpenGL video view to use modern shaders / APIs.
Carl Hetherington [Sat, 17 Apr 2021 23:03:52 +0000 (01:03 +0200)]
Re-work OpenGL video view to use modern shaders / APIs.

2 years agoAdd some OpenGL-related notes and hacks.
Carl Hetherington [Sat, 17 Apr 2021 23:10:47 +0000 (01:10 +0200)]
Add some OpenGL-related notes and hacks.

2 years agoAdd new GLError constructor.
Carl Hetherington [Wed, 8 Sep 2021 23:03:15 +0000 (01:03 +0200)]
Add new GLError constructor.

2 years agoRemove unnecessary _out_size; it looks like we can just use the image size.
Carl Hetherington [Thu, 9 Sep 2021 19:06:31 +0000 (21:06 +0200)]
Remove unnecessary _out_size; it looks like we can just use the image size.

2 years agoMerge branch 'own-config' into v2.15.x
Carl Hetherington [Mon, 27 Sep 2021 09:55:27 +0000 (11:55 +0200)]
Merge branch 'own-config' into v2.15.x

This makes 2.15.x copy the 2.14.x configuration so you can run 2.14.x
again afterwards without recreating everything.

2 years agoRemove unused method. own-config
Carl Hetherington [Mon, 27 Sep 2021 09:45:00 +0000 (11:45 +0200)]
Remove unused method.

2 years agoAdd config location versioning (#2090).
Carl Hetherington [Sat, 25 Sep 2021 22:09:04 +0000 (00:09 +0200)]
Add config location versioning (#2090).

2 years agoRemove some unused using statements.
Carl Hetherington [Sat, 25 Sep 2021 22:08:46 +0000 (00:08 +0200)]
Remove some unused using statements.

2 years agoPrefer %userprofile% to %homedrive% and %homepath% for home directory location on...
Carl Hetherington [Sun, 26 Sep 2021 19:42:02 +0000 (21:42 +0200)]
Prefer %userprofile% to %homedrive% and %homepath% for home directory location on Windows.

For some strange reason on my laptop %HOMEDRIVE% comes up as z:\
whereas %userprofile% makes more sense.

2 years agoCopy gdk-pixbuf-2.0 stuff and fix LD_LIBRARY_PATH to make SVG icons work (#1996).
cah [Sun, 26 Sep 2021 17:48:35 +0000 (19:48 +0200)]
Copy gdk-pixbuf-2.0 stuff and fix LD_LIBRARY_PATH to make SVG icons work (#1996).

2 years agoRead ISDCF Metadata from 2.14.x metadata (#2083).
cah [Sat, 25 Sep 2021 18:38:58 +0000 (20:38 +0200)]
Read ISDCF Metadata from 2.14.x metadata (#2083).

2 years agoSpeculative Ubuntu 21.10 support.
Carl Hetherington [Tue, 21 Sep 2021 22:37:13 +0000 (00:37 +0200)]
Speculative Ubuntu 21.10 support.

2 years agoRemove some now-unused libwxgtk dependencies.
Carl Hetherington [Tue, 21 Sep 2021 22:30:56 +0000 (00:30 +0200)]
Remove some now-unused libwxgtk dependencies.

2 years agoTweak formatting. v2.15.162
Carl Hetherington [Wed, 8 Sep 2021 23:03:03 +0000 (01:03 +0200)]
Tweak formatting.

2 years agoBump library versions for new mxe.
Carl Hetherington [Fri, 18 Jun 2021 13:08:21 +0000 (15:08 +0200)]
Bump library versions for new mxe.

2 years agoSwitch wx-3.0 -> wx-3.1 on Windows.
Carl Hetherington [Wed, 16 Jun 2021 23:06:25 +0000 (01:06 +0200)]
Switch wx-3.0 -> wx-3.1 on Windows.

2 years agoOnly define UNICODE in src/lib/{cross_windows,util}.cc.
Carl Hetherington [Tue, 15 Jun 2021 22:59:19 +0000 (00:59 +0200)]
Only define UNICODE in src/lib/{cross_windows,util}.cc.

2 years agoExtract colours to VideoView.
Carl Hetherington [Thu, 9 Sep 2021 18:29:44 +0000 (20:29 +0200)]
Extract colours to VideoView.

2 years agoFix incorrect display of Unicode literal on Windows.
Carl Hetherington [Wed, 8 Sep 2021 22:46:48 +0000 (00:46 +0200)]
Fix incorrect display of Unicode literal on Windows.

2 years agoMove 'show in file manager' code to cross_*
Carl Hetherington [Thu, 17 Jun 2021 21:21:54 +0000 (23:21 +0200)]
Move 'show in file manager' code to cross_*

2 years agoFix environment path for player script.
Carl Hetherington [Tue, 8 Jun 2021 22:12:28 +0000 (00:12 +0200)]
Fix environment path for player script.

2 years agoAssorted tidying.
Carl Hetherington [Sun, 19 Sep 2021 23:44:30 +0000 (01:44 +0200)]
Assorted tidying.

2 years agoAdd LastWrittenBy to metadata (#2080).
Carl Hetherington [Sun, 19 Sep 2021 21:57:45 +0000 (23:57 +0200)]
Add LastWrittenBy to metadata (#2080).

2 years agoUse a constexpr and a nullptr.
Carl Hetherington [Sun, 19 Sep 2021 21:57:21 +0000 (23:57 +0200)]
Use a constexpr and a nullptr.

2 years agoinclude/using sorting and some white space.
Carl Hetherington [Sun, 19 Sep 2021 21:57:09 +0000 (23:57 +0200)]
include/using sorting and some white space.

2 years agoFix failure to reset state to "to fit DCP" properly (#2081).
Carl Hetherington [Sun, 19 Sep 2021 20:19:58 +0000 (22:19 +0200)]
Fix failure to reset state to "to fit DCP" properly (#2081).

2 years agoRemove unused VideoContentProperty::SCALE and listen to CUSTOM_{RATIO,SIZE} instead.
Carl Hetherington [Sun, 19 Sep 2021 20:19:38 +0000 (22:19 +0200)]
Remove unused VideoContentProperty::SCALE and listen to CUSTOM_{RATIO,SIZE} instead.

::SCALE was sort-of being used, as it was emitted during examination of
video content, but it wasn't being emitted anywhere else (and CUSTOM_{RATIO,SIZE}
replace its functionality as far as I can see).

2 years agoCheck _inter_size in ::has_j2k() (fixes #2086).
Carl Hetherington [Sun, 19 Sep 2021 20:58:31 +0000 (22:58 +0200)]
Check _inter_size in ::has_j2k() (fixes #2086).

The example in the bug shrinks a content DCP while keeping the
container the same.  We need to check that neither _out_size nor
_inter_size have changed, to check for scaling/padding.

2 years agoAdd state of _reencode_j2k to the video identifier.
Carl Hetherington [Sun, 19 Sep 2021 20:58:02 +0000 (22:58 +0200)]
Add state of _reencode_j2k to the video identifier.

Otherwise if we change the state of this and re-make a DCP it will
not re-encode the J2K.

2 years agoRemove an unused using.
Carl Hetherington [Sun, 19 Sep 2021 20:57:54 +0000 (22:57 +0200)]
Remove an unused using.

2 years agoFix failure to open v2.14.x documents with invalid or empty subtitle languages (...
Carl Hetherington [Sun, 19 Sep 2021 19:45:22 +0000 (21:45 +0200)]
Fix failure to open v2.14.x documents with invalid or empty subtitle languages (#2085).

2 years agoC++11 and general tidying.
Carl Hetherington [Sun, 19 Sep 2021 19:43:08 +0000 (21:43 +0200)]
C++11 and general tidying.

2 years agoAdd another believed-correct subtitle timing fix. v2.15.161
Carl Hetherington [Sun, 12 Sep 2021 20:51:09 +0000 (22:51 +0200)]
Add another believed-correct subtitle timing fix.