libdcp.git
3 years agoBv2.1 7.2.3: Check that subtitle <StartTime> exists and is 0.
Carl Hetherington [Sat, 2 Jan 2021 23:31:40 +0000 (00:31 +0100)]
Bv2.1 7.2.3: Check that subtitle <StartTime> exists and is 0.

3 years agoBv2.1 7.2.2: Check that subtitle languages are the same for all reels.
Carl Hetherington [Mon, 14 Dec 2020 23:51:34 +0000 (00:51 +0100)]
Bv2.1 7.2.2: Check that subtitle languages are the same for all reels.

3 years agoRemove unused variable.
Carl Hetherington [Mon, 14 Dec 2020 23:24:12 +0000 (00:24 +0100)]
Remove unused variable.

3 years agoChange the word 'disagree' to 'differ'.
Carl Hetherington [Mon, 14 Dec 2020 22:58:53 +0000 (23:58 +0100)]
Change the word 'disagree' to 'differ'.

3 years agoBv2.1 7.2.2: Check that subtitle Language tags are present.
Carl Hetherington [Mon, 14 Dec 2020 22:23:41 +0000 (23:23 +0100)]
Bv2.1 7.2.2: Check that subtitle Language tags are present.

3 years agoFix to allow re-writing of SMPTE subtitles.
Carl Hetherington [Mon, 14 Dec 2020 22:23:22 +0000 (23:23 +0100)]
Fix to allow re-writing of SMPTE subtitles.

3 years agoBv2.1 7.2.1: Check total size of all timed text fonts is not larger than 10MB.
Carl Hetherington [Sun, 13 Dec 2020 22:49:48 +0000 (23:49 +0100)]
Bv2.1 7.2.1: Check total size of all timed text fonts is not larger than 10MB.

I'm not sure if this is what Bv2.1 means, but hopefully it's close
enough.

3 years agoBv2.1 7.2.1: Check size of timed text asset is not larger than 115MB.
Carl Hetherington [Sun, 13 Dec 2020 22:03:22 +0000 (23:03 +0100)]
Bv2.1 7.2.1: Check size of timed text asset is not larger than 115MB.

3 years agoUpdate BRANCH.
Carl Hetherington [Sun, 13 Dec 2020 21:36:07 +0000 (22:36 +0100)]
Update BRANCH.

3 years agoBv2.1 7.2.1: Check size of closed caption XML is not larger than 256KB.
Carl Hetherington [Sun, 13 Dec 2020 21:23:07 +0000 (22:23 +0100)]
Bv2.1 7.2.1: Check size of closed caption XML is not larger than 256KB.

3 years agoSubtitle constructor should not be public.
Carl Hetherington [Sun, 13 Dec 2020 21:18:26 +0000 (22:18 +0100)]
Subtitle constructor should not be public.

3 years agoBv2.1 7.1: Check picture size and frame rate.
Carl Hetherington [Sun, 13 Dec 2020 20:23:41 +0000 (21:23 +0100)]
Bv2.1 7.1: Check picture size and frame rate.

3 years agoExtent black_image() to make images of any size.
Carl Hetherington [Sun, 13 Dec 2020 20:22:30 +0000 (21:22 +0100)]
Extent black_image() to make images of any size.

3 years agoRaise an exception to head off a weird asdcplib error with empty JPEG2000 comments.
Carl Hetherington [Sun, 13 Dec 2020 20:22:15 +0000 (21:22 +0100)]
Raise an exception to head off a weird asdcplib error with empty JPEG2000 comments.

3 years agoThrow an exception on making a DCP with no reels.
Carl Hetherington [Sun, 13 Dec 2020 20:22:00 +0000 (21:22 +0100)]
Throw an exception on making a DCP with no reels.

3 years agoReplace dcp::File with dcp::ArrayData.
Carl Hetherington [Sun, 13 Dec 2020 00:30:30 +0000 (01:30 +0100)]
Replace dcp::File with dcp::ArrayData.

3 years agoRemove 32x32 test image.
Carl Hetherington [Sat, 12 Dec 2020 23:33:58 +0000 (00:33 +0100)]
Remove 32x32 test image.

3 years agoUse a valid frame size for simple_picture().
Carl Hetherington [Sat, 12 Dec 2020 22:08:56 +0000 (23:08 +0100)]
Use a valid frame size for simple_picture().

3 years agoRename some notes to clarify places where size refers to bytes, not pixels.
Carl Hetherington [Sat, 12 Dec 2020 19:52:29 +0000 (20:52 +0100)]
Rename some notes to clarify places where size refers to bytes, not pixels.

3 years agoBv2.1 6.2.1: Check that release territory conforms to RFC 5646.
Carl Hetherington [Sat, 12 Dec 2020 19:33:15 +0000 (20:33 +0100)]
Bv2.1 6.2.1: Check that release territory conforms to RFC 5646.

3 years agoBv2.1 6.2.1: Check that additional subtitle languages conform to RFC 5646.
Carl Hetherington [Sat, 12 Dec 2020 19:21:28 +0000 (20:21 +0100)]
Bv2.1 6.2.1: Check that additional subtitle languages conform to RFC 5646.

3 years agoBv2.1 6.2.1: Check that closed caption reel and XML <Language> conform to RFC 5646.
Carl Hetherington [Wed, 9 Dec 2020 15:27:26 +0000 (16:27 +0100)]
Bv2.1 6.2.1: Check that closed caption reel and XML <Language> conform to RFC 5646.

3 years agoFix namespace on closed caption Language tag.
Carl Hetherington [Wed, 9 Dec 2020 15:26:33 +0000 (16:26 +0100)]
Fix namespace on closed caption Language tag.

3 years agoSmall tweaks to how things are passed around.
Carl Hetherington [Wed, 9 Dec 2020 13:59:29 +0000 (14:59 +0100)]
Small tweaks to how things are passed around.

3 years agoBv2.1 6.2.1: Check that the sound MXF Language tag conforms to RFC 5646.
Carl Hetherington [Wed, 9 Dec 2020 12:13:23 +0000 (13:13 +0100)]
Bv2.1 6.2.1: Check that the sound MXF Language tag conforms to RFC 5646.

3 years agoStore sound asset language as a string, but set it as a
Carl Hetherington [Wed, 9 Dec 2020 12:12:21 +0000 (13:12 +0100)]
Store sound asset language as a string, but set it as a
dcp::LanguageTag.

This makes it work the same as other language tags, and tolerates
bad values while trying not to allow them to be created.

3 years agoExtract simple_sound() method.
Carl Hetherington [Wed, 9 Dec 2020 10:59:29 +0000 (11:59 +0100)]
Extract simple_sound() method.

3 years agoWe can always dump notes where there are none expected.
Carl Hetherington [Wed, 9 Dec 2020 09:54:55 +0000 (10:54 +0100)]
We can always dump notes where there are none expected.

3 years agoLanguageTag strings should not care about case.
Carl Hetherington [Wed, 9 Dec 2020 09:54:38 +0000 (10:54 +0100)]
LanguageTag strings should not care about case.

3 years ago Bv2.1 6.2.1: Check that subtitle XML <Language> conforms to RFC 5646.
Carl Hetherington [Wed, 9 Dec 2020 09:21:57 +0000 (10:21 +0100)]
 Bv2.1 6.2.1: Check that subtitle XML <Language> conforms to RFC 5646.

3 years agoTiny cleanup of using prepare_directory.
Carl Hetherington [Wed, 9 Dec 2020 00:17:38 +0000 (01:17 +0100)]
Tiny cleanup of using prepare_directory.

3 years agoBv2.1 6.2.1: Check that subtitle reel <Language> conforms to RFC 5646.
Carl Hetherington [Wed, 9 Dec 2020 00:08:14 +0000 (01:08 +0100)]
Bv2.1 6.2.1: Check that subtitle reel <Language> conforms to RFC 5646.

3 years agoBRANCH
Carl Hetherington [Tue, 8 Dec 2020 23:25:29 +0000 (00:25 +0100)]
BRANCH

3 years agoBv2.1 6.1: DCPs must be SMPTE.
Carl Hetherington [Tue, 8 Dec 2020 22:42:40 +0000 (23:42 +0100)]
Bv2.1 6.1: DCPs must be SMPTE.

3 years agoAdd VERIFY_BV21_ERROR.
Carl Hetherington [Tue, 8 Dec 2020 22:42:13 +0000 (23:42 +0100)]
Add VERIFY_BV21_ERROR.

3 years agoAdd BRANCH notes.
Carl Hetherington [Tue, 8 Dec 2020 22:41:51 +0000 (23:41 +0100)]
Add BRANCH notes.

3 years agoFix macOS test environment path.
Carl Hetherington [Sun, 17 Jan 2021 12:07:56 +0000 (13:07 +0100)]
Fix macOS test environment path.

3 years agoBump libcxml.
Carl Hetherington [Fri, 8 Jan 2021 20:51:10 +0000 (21:51 +0100)]
Bump libcxml.

3 years agoMore c++11 tidying.
Carl Hetherington [Fri, 8 Jan 2021 20:49:47 +0000 (21:49 +0100)]
More c++11 tidying.

3 years agoc++11 tidying.
Carl Hetherington [Fri, 8 Jan 2021 16:43:59 +0000 (17:43 +0100)]
c++11 tidying.

3 years agoRemove use of xmldiff in tests.
Carl Hetherington [Fri, 8 Jan 2021 16:43:49 +0000 (17:43 +0100)]
Remove use of xmldiff in tests.

3 years agostd::shared_ptr
Carl Hetherington [Sun, 20 Dec 2020 13:14:07 +0000 (14:14 +0100)]
std::shared_ptr

3 years agoFix test following previous commit.
Carl Hetherington [Thu, 7 Jan 2021 23:35:07 +0000 (00:35 +0100)]
Fix test following previous commit.

3 years agoAccept fonts as data blocks rather than files.
Carl Hetherington [Sun, 20 Dec 2020 22:49:48 +0000 (23:49 +0100)]
Accept fonts as data blocks rather than files.

3 years agoFix equals() with image subtitles to not compare unique IDs.
Carl Hetherington [Wed, 2 Dec 2020 09:09:30 +0000 (10:09 +0100)]
Fix equals() with image subtitles to not compare unique IDs.

Also add an option to save subtitle images to PNGs when they differ.

3 years agoAdd operator!= for Data.
Carl Hetherington [Wed, 2 Dec 2020 09:09:06 +0000 (10:09 +0100)]
Add operator!= for Data.

3 years agoFix terrible SoundAsset::equals() implementation.
Carl Hetherington [Sun, 29 Nov 2020 19:57:57 +0000 (20:57 +0100)]
Fix terrible SoundAsset::equals() implementation.

It would check individual bytes of samples to see if they differed
by more than the threshold.  Not only is this almost useless, but
the default threshold is 256 so with the default settings it would
always say that two assets of the same length (and channels, etc.)
were the same, even if the sample data was different.

3 years agoFix SoundFrame::get().
Carl Hetherington [Sun, 29 Nov 2020 19:57:09 +0000 (20:57 +0100)]
Fix SoundFrame::get().

The old version did not deal with signed-ness correctly.  I think
this version is slightly dodgy in that it assumes 2s complement,
but that's probably not so bad.

3 years agoAdd SoundFrame::channels().
Carl Hetherington [Sun, 29 Nov 2020 19:56:37 +0000 (20:56 +0100)]
Add SoundFrame::channels().

3 years agoAdd comment.
Carl Hetherington [Sun, 29 Nov 2020 19:56:11 +0000 (20:56 +0100)]
Add comment.

3 years agoAdd set_hash() method to ReelMXF.
Carl Hetherington [Wed, 25 Nov 2020 22:32:44 +0000 (23:32 +0100)]
Add set_hash() method to ReelMXF.

3 years agoSeems like an oversight that MainSubtitleLanguageList had no namespace.
Carl Hetherington [Sun, 22 Nov 2020 22:24:16 +0000 (23:24 +0100)]
Seems like an oversight that MainSubtitleLanguageList had no namespace.

3 years agoAdd SMPTE Bv2.1 ExtensionMetadata.
Carl Hetherington [Sun, 22 Nov 2020 22:19:35 +0000 (23:19 +0100)]
Add SMPTE Bv2.1 ExtensionMetadata.

3 years agoBetter equality-failure error messages.
Carl Hetherington [Sat, 21 Nov 2020 01:32:08 +0000 (02:32 +0100)]
Better equality-failure error messages.

3 years agoMore detailed error with inequality.
Carl Hetherington [Fri, 20 Nov 2020 23:04:01 +0000 (00:04 +0100)]
More detailed error with inequality.

3 years agoFix crash on comparing reels with and without markers.
Carl Hetherington [Fri, 20 Nov 2020 23:03:51 +0000 (00:03 +0100)]
Fix crash on comparing reels with and without markers.

3 years agoApply the same rules to closed captions.
Carl Hetherington [Fri, 20 Nov 2020 01:28:22 +0000 (02:28 +0100)]
Apply the same rules to closed captions.

3 years agoTidy up handling of language metadata for subtitles.
Carl Hetherington [Thu, 19 Nov 2020 23:40:35 +0000 (00:40 +0100)]
Tidy up handling of language metadata for subtitles.

Tried to normalise the idea that subtitle languages are stored as
strings but set as LanguageTags.  This may be too defensive; perhaps
SMPTE language metadata is always right, or perhaps even if it isn't
we should throw errors.

3 years agoFix missing const.
Carl Hetherington [Sun, 15 Nov 2020 23:09:19 +0000 (00:09 +0100)]
Fix missing const.

3 years agoFix dcpkdm script when run from another directory.
Carl Hetherington [Sun, 15 Nov 2020 20:46:05 +0000 (21:46 +0100)]
Fix dcpkdm script when run from another directory.

3 years agoTweak formatting.
Carl Hetherington [Sat, 14 Nov 2020 18:52:05 +0000 (19:52 +0100)]
Tweak formatting.

3 years agoMake StereoPictureFrame expose the Data API in a similar way to MonoPictureFrame.
Carl Hetherington [Sun, 1 Nov 2020 22:37:31 +0000 (23:37 +0100)]
Make StereoPictureFrame expose the Data API in a similar way to MonoPictureFrame.

3 years agoMake MonoPictureAsset implement the Data interface.
Carl Hetherington [Sun, 1 Nov 2020 21:42:36 +0000 (22:42 +0100)]
Make MonoPictureAsset implement the Data interface.

3 years agoMissing return value check.
Carl Hetherington [Sun, 1 Nov 2020 21:31:48 +0000 (22:31 +0100)]
Missing return value check.

3 years agoUse some shared_ptr<> instead of raw pointers.
Carl Hetherington [Sat, 31 Oct 2020 22:10:39 +0000 (23:10 +0100)]
Use some shared_ptr<> instead of raw pointers.

3 years agoAdd Data class and change API to a raw pointer.
Carl Hetherington [Sat, 31 Oct 2020 21:44:28 +0000 (22:44 +0100)]
Add Data class and change API to a raw pointer.

3 years agoRename Data -> ArrayData.
Carl Hetherington [Thu, 29 Oct 2020 23:50:57 +0000 (00:50 +0100)]
Rename Data -> ArrayData.

3 years agoMove benchmark out of test/ into benchmark/
Carl Hetherington [Wed, 28 Oct 2020 14:49:15 +0000 (15:49 +0100)]
Move benchmark out of test/ into benchmark/

3 years agoAdd path for macOS tests.
Carl Hetherington [Fri, 23 Oct 2020 20:55:27 +0000 (22:55 +0200)]
Add path for macOS tests.

3 years agoCleanup old path.
Carl Hetherington [Fri, 23 Oct 2020 20:52:38 +0000 (22:52 +0200)]
Cleanup old path.

3 years agomacOS / new boost build fixes.
Carl Hetherington [Fri, 23 Oct 2020 19:44:09 +0000 (21:44 +0200)]
macOS / new boost build fixes.

3 years agoEnable building tests on macOS.
Carl Hetherington [Fri, 23 Oct 2020 19:22:16 +0000 (21:22 +0200)]
Enable building tests on macOS.

3 years agoTidy up some constant naming.
Carl Hetherington [Thu, 22 Oct 2020 21:22:29 +0000 (23:22 +0200)]
Tidy up some constant naming.

3 years agomacOS / boost 1.74 build fixes.
Carl Hetherington [Tue, 20 Oct 2020 22:20:33 +0000 (00:20 +0200)]
macOS / boost 1.74 build fixes.

3 years agoMove a bind.hpp include out of a header.
Carl Hetherington [Tue, 20 Oct 2020 20:09:32 +0000 (22:09 +0200)]
Move a bind.hpp include out of a header.

3 years agoFix crash when loading DCPs whose ASSETMAP contains files that are
Carl Hetherington [Sat, 10 Oct 2020 16:58:05 +0000 (18:58 +0200)]
Fix crash when loading DCPs whose ASSETMAP contains files that are
not mentioned in any PKL (#1855).

3 years agoMissing error checking on writing KDMs as XML.
Carl Hetherington [Tue, 6 Oct 2020 09:26:14 +0000 (11:26 +0200)]
Missing error checking on writing KDMs as XML.

3 years agoWe should not carry on if files don't open in tests.
Carl Hetherington [Tue, 6 Oct 2020 09:26:03 +0000 (11:26 +0200)]
We should not carry on if files don't open in tests.

3 years agoFix install of .xsd files to be more robust.
Carl Hetherington [Sun, 27 Sep 2020 19:04:25 +0000 (21:04 +0200)]
Fix install of .xsd files to be more robust.

3 years ago<ContentVersion> is optional in Interop so we can't assume it's there.
Carl Hetherington [Sun, 27 Sep 2020 18:20:23 +0000 (20:20 +0200)]
<ContentVersion> is optional in Interop so we can't assume it's there.

3 years agoLoad language tags from on-disk files rather than embedding them
Carl Hetherington [Sun, 27 Sep 2020 17:32:15 +0000 (19:32 +0200)]
Load language tags from on-disk files rather than embedding them
into a .cc.

The .cc method causes compile times (and memory requirements) increase
enormously with some compilers.

3 years agoDeclare language tag lists as const.
Carl Hetherington [Sat, 26 Sep 2020 09:26:50 +0000 (11:26 +0200)]
Declare language tag lists as const.

3 years agoMissing virtual destructor.
Carl Hetherington [Sat, 26 Sep 2020 08:54:04 +0000 (10:54 +0200)]
Missing virtual destructor.

3 years agoFix thinko.
Carl Hetherington [Fri, 25 Sep 2020 20:36:47 +0000 (22:36 +0200)]
Fix thinko.

3 years agoHide unused audio channels a bit more clearly, not giving them
Carl Hetherington [Wed, 23 Sep 2020 20:32:45 +0000 (22:32 +0200)]
Hide unused audio channels a bit more clearly, not giving them
names any more.  Add dcp::used_audio_channels().

3 years agoDon't fail to write CPL if no content version has been set up.
Carl Hetherington [Wed, 23 Sep 2020 18:15:35 +0000 (20:15 +0200)]
Don't fail to write CPL if no content version has been set up.

3 years agoFix crashes when static linking due to tricky lifetime crash
Carl Hetherington [Mon, 21 Sep 2020 20:33:43 +0000 (22:33 +0200)]
Fix crashes when static linking due to tricky lifetime
management of ASDCP::DefaultSMPTEDict().

3 years agoBetter error locations in XML.
Carl Hetherington [Sun, 20 Sep 2020 23:04:30 +0000 (01:04 +0200)]
Better error locations in XML.

3 years agoAdapt for changes in parent branch, and test churn.
Carl Hetherington [Sun, 20 Sep 2020 22:53:55 +0000 (00:53 +0200)]
Adapt for changes in parent branch, and test churn.

3 years agoVerify MCA tags.
Carl Hetherington [Tue, 8 Sep 2020 18:42:55 +0000 (20:42 +0200)]
Verify MCA tags.

3 years agoAdd another test.
Carl Hetherington [Mon, 7 Sep 2020 21:46:32 +0000 (23:46 +0200)]
Add another test.

3 years agoSupport MCA sound channel tags in MXF/CPL.
Carl Hetherington [Sun, 6 Sep 2020 18:10:13 +0000 (20:10 +0200)]
Support MCA sound channel tags in MXF/CPL.

3 years agoAdd another .xsd.
Carl Hetherington [Thu, 3 Sep 2020 18:42:47 +0000 (20:42 +0200)]
Add another .xsd.

3 years agoAdd extra parameter to Interop subtitles seen in the wild.
Carl Hetherington [Thu, 3 Sep 2020 10:10:38 +0000 (12:10 +0200)]
Add extra parameter to Interop subtitles seen in the wild.

3 years agoAdd namespaces and tweak CPL namespace so Xerces checks CompositionMetadataAsset.
Carl Hetherington [Thu, 3 Sep 2020 10:10:27 +0000 (12:10 +0200)]
Add namespaces and tweak CPL namespace so Xerces checks CompositionMetadataAsset.

3 years agoMissing note type when filtering out missing asset errors.
Carl Hetherington [Thu, 3 Sep 2020 10:09:53 +0000 (12:09 +0200)]
Missing note type when filtering out missing asset errors.

3 years agoAdd some new verification tests.
Carl Hetherington [Thu, 3 Sep 2020 10:09:39 +0000 (12:09 +0200)]
Add some new verification tests.

3 years agoRemove stdout noise from tests.
Carl Hetherington [Thu, 3 Sep 2020 10:09:11 +0000 (12:09 +0200)]
Remove stdout noise from tests.

3 years agoAccept missing MainSoundConfiguration and MainSoundSampleRate, for better or for...
Carl Hetherington [Thu, 3 Sep 2020 10:06:49 +0000 (12:06 +0200)]
Accept missing MainSoundConfiguration and MainSoundSampleRate, for better or for worse.

3 years agoRun dcpverify on everything in the libdcp-test-private metadata set.
Carl Hetherington [Thu, 3 Sep 2020 10:05:55 +0000 (12:05 +0200)]
Run dcpverify on everything in the libdcp-test-private metadata set.