summaryrefslogtreecommitdiff
path: root/src/cpl.cc
AgeCommit message (Collapse)Author
2023-10-09Add wrappers around boost::filesystem methods that handle theCarl Hetherington
required mangling of long filenames on Windows. Also wrap lots of missing places (e.g. calls to asdcplib, libxml++, libcxml etc.) in dcp::filesystem::fix_long_path(). The idea is to keep paths un-mangled until they we call some filesystem-related API and mangle them at that point. Otherwise we end up serialising mangled names, which seems like it will not end well. Should fix DoM #2623.
2023-07-25Cleanup: move EqualityOptions into its own file.Carl Hetherington
2023-07-25Cleanup: pass EqualityOptions as const&Carl Hetherington
This exposes a useless assignment of export_differing_subtitles, which I've removed (and altered the comment accordingly).
2023-04-04Pass MainSoundConfiguration object rather than a string.Carl Hetherington
I guess originally it was a string mostly because it's not very well defined, and Interop seemingly does whatever it wants. This basic change also means that things are checked more carefully, and so we must be more relaxed with some things seen in the wild that I can't find contradictions for in the standard (and also with the case of channel IDs, which does seem to be mentioned in the standard).
2023-03-21Allow specification of channels that need a MCASubDescriptor.Carl Hetherington
2023-02-28Add include_mca_subdescriptors option to CPL::write_xml().Carl Hetherington
2023-02-28Cleanup: extract write_mca_subdescriptors().Carl Hetherington
2023-02-26Remove LIBDCP_VERSION in favour of dcp::version.v1.8.62Carl Hetherington
The former is only set at configure which is a bit confusing, and I can't think of a reason to have both.
2023-02-13Interop CPLs don't have MainPictureStoredArea (#2452).v1.8.58Carl Hetherington
2023-01-24Only write the appropriate number of AudioChannelLabelSubDescriptors (DoM ↵v1.8.54Carl Hetherington
#2431).
2022-12-16Throw exceptions when setting odd values for picture active area.Carl Hetherington
2022-09-03Properly support ContentKind scope attribute.v1.8.26Carl Hetherington
2022-09-02Replace ContentKind enum with a class.Carl Hetherington
2022-08-15Tolerate missing FullContentTitleText (DoM bug #2295).v1.8.252295-tolerate-missing-full-content-titleCarl Hetherington
2022-08-15Stop assuming that the presence of FullContentTitleText means that there was ↵Carl Hetherington
CPL metadata.
2022-04-26Add CPL::set().Carl Hetherington
2021-08-04Add support for writing CPL metadata about sign language video tracks (DoM ↵Carl Hetherington
#2062).
2021-08-04Don't bother checking the return of node_child as it can never be nullCarl Hetherington
2021-08-04Make adding extension metadata items more generic.Carl Hetherington
2021-06-02Pass through CompositionMetadataAsset correctly.Carl Hetherington
We weren't saving Id, and were not quite handling FullContentText correctly.
2021-04-14Fix/hide some warnings.Carl Hetherington
2021-04-13Remove ReelEncryptableAsset and tidy up a bit.Carl Hetherington
2021-04-12Split ReelClosedCaptionAsset into Interop and SMPTE parts.Carl Hetherington
2021-04-12Specify CPL standard on construction.Carl Hetherington
Then choose which standard DCP should use based on the CPL(s).
2021-04-12Split ReelSubtitleAsset into Interop and SMPTE classes.Carl Hetherington
2021-04-11Small bits of tidying up.Carl Hetherington
2021-04-11Extract some parts of ReelEncryptableAsset into ReelFileAssetCarl Hetherington
2021-04-10Rename ReelFileAsset -> ReelEncryptableAssetCarl Hetherington
2021-01-26Rename ReelMXF -> ReelFileAsset.Carl Hetherington
2021-01-24Tidying.Carl Hetherington
2021-01-21Use enum class for the things in types.hCarl Hetherington
2021-01-19Rename encrypted() to any_encrypted() and add all_encrypted().Carl Hetherington
2021-01-18Add CPL::unset_version_number().Carl Hetherington
2021-01-17Read scope attribute of ReleaseTerritory.Carl Hetherington
2021-01-17Make CPL annotation_text optional.Carl Hetherington
2021-01-17Replace std::list with std::vector in the API.Carl Hetherington
2021-01-17Throw an exception on making a DCP with no reels.Carl Hetherington
2021-01-08More c++11 tidying.Carl Hetherington
2021-01-08std::shared_ptrCarl Hetherington
2020-11-22Seems like an oversight that MainSubtitleLanguageList had no namespace.Carl Hetherington
2020-11-22Add SMPTE Bv2.1 ExtensionMetadata.Carl Hetherington
2020-11-20Tidy up handling of language metadata for subtitles.Carl Hetherington
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.
2020-09-27<ContentVersion> is optional in Interop so we can't assume it's there.Carl Hetherington
2020-09-23Don't fail to write CPL if no content version has been set up.Carl Hetherington
2020-09-22Fix crashes when static linking due to tricky lifetimecrashCarl Hetherington
management of ASDCP::DefaultSMPTEDict().
2020-09-21Support MCA sound channel tags in MXF/CPL.Carl Hetherington
2020-09-21Accept missing MainSoundConfiguration and MainSoundSampleRate, for better or ↵Carl Hetherington
for worse.
2020-09-21Support CPL metadata.Carl Hetherington
2020-09-21Use a vector<ContentVersion> instead of just one, to support theCarl Hetherington
new metadata.
2020-09-21Add ContentVersion class.Carl Hetherington