summaryrefslogtreecommitdiff
path: root/src/dcp.cc
AgeCommit message (Collapse)Author
2024-09-25Merge remote-tracking branch 'origin/main' into v1.9.xv1.9.22Carl Hetherington
2024-09-23Allow but give an error when seeing a strange PKL namespace.v1.8.110Carl Hetherington
DoM bug #2868 reports that Resolve made a DCP with the PKL namespace http://www.smpte-ra.org/schemas/2067-2/2016/PKL This seems wrong (google suggests that this is the namespace for IMF PKLs) but let's accept it and log an error instead of throwing an exception.
2024-08-17{,Interop,SMPTE}SubtitleAsset -> {,Interop,SMPTE}TextAsset.Carl Hetherington
2024-08-17Reel{,Interop,SMPTE}SubtitleAsset -> Reel{,Interop,SMPTE}TextAsset.Carl Hetherington
2024-04-22Support MPEG2 decompression.Carl Hetherington
2024-04-18Rename classes.Carl Hetherington
sed -i "s/\<PictureAsset/J2KPictureAsset/g" src/*.{cc,h} sed -i "s/\<dcp::PictureAsset/dcp::J2KPictureAsset/g" src/*.{cc,h} test/*.{cc,h} tools/*.cc examples/*.cc sed -i "s/\<MonoPictureAsset/MonoJ2KPictureAsset/g" src/*.{cc,h} tools/*.cc test/*.{cc,h} sed -i "s/\<dcp::MonoPictureAsset/dcp::MonoJ2KPictureAsset/g" src/*.{cc,h} test/*.{cc,h} tools/*.cc examples/*.cc sed -i "s/\<StereoPictureAsset/StereoJ2KPictureAsset/g" src/*.{cc,h} tools/*.cc sed -i "s/\<dcp::StereoPictureAsset/dcp::StereoJ2KPictureAsset/g" src/*.{cc,h} test/*.{cc,h} tools/*.cc examples/*.cc sed -i "s/\<MonoPictureFrame/MonoJ2KPictureFrame/g" src/*.{cc,h} tools/*.cc test/*.{cc,h} sed -i "s/\<dcp::MonoPictureFrame/dcp::MonoJ2KPictureFrame/g" src/*.{cc,h} test/*.{cc,h} tools/*.cc examples/*.cc sed -i "s/\<StereoPictureFrame/StereoJ2KPictureFrame/g" src/*.{cc,h} tools/*.cc sed -i "s/\<dcp::StereoPictureFrame/dcp::StereoJ2KPictureFrame/g" src/*.{cc,h} test/*.{cc,h} tools/*.cc examples/*.cc
2024-04-18Fix includes.Carl Hetherington
sed -i "s/#include \"stereo_picture_asset_writer.h\"/#include \"stereo_j2k_picture_asset_writer.h\""/g src/*.{cc,h} sed -i "s/#include \"mono_picture_asset_writer.h\"/#include \"mono_j2k_picture_asset_writer.h\""/g src/*.{cc,h} examples/*.cc sed -i "s/#include \"stereo_picture_asset_reader.h\"/#include \"stereo_j2k_picture_asset_reader.h\""/g src/*.{cc,h} sed -i "s/#include \"mono_picture_asset_reader.h\"/#include \"mono_j2k_picture_asset_reader.h\""/g src/*.{cc,h} test/*.cc examples/*.cc sed -i "s/#include \"stereo_picture_asset.h\"/#include \"stereo_j2k_picture_asset.h\""/g src/*.{cc,h} test/*.cc examples/*.cc sed -i "s/#include \"mono_picture_asset.h\"/#include \"mono_j2k_picture_asset.h\""/g src/*.{cc,h} examples/*.cc sed -i "s/#include \"picture_asset_writer.h\"/#include \"j2k_picture_asset_writer.h\""/g src/*.{cc,h} test/*.cc sed -i "s/#include \"mono_picture_asset_writer.h\"/#include \"mono_j2k_picture_asset_writer.h\""/g src/*.{cc,h} test/*.cc tools/*.cc sed -i "s/#include \"picture_asset.h\"/#include \"j2k_picture_asset.h\""/g src/*.{cc,h} tools/*.cc sed -i "s/#include \"mono_picture_asset.h\"/#include \"mono_j2k_picture_asset.h\""/g src/*.{cc,h} test/*.cc tools/*.cc sed -i "s/#include \"mono_picture_frame.h\"/#include \"mono_j2k_picture_frame.h\""/g src/*.{cc,h} test/*.cc examples/*.cc sed -i "s/#include \"stereo_picture_frame.h\"/#include \"stereo_j2k_picture_frame.h\""/g src/*.{cc,h} sed -i "s/#include \"picture_asset_writer_common.cc\"/#include \"j2k_picture_asset_writer_common.cc\""/g src/*.{cc,h}
2024-04-18Merge remote-tracking branch 'origin/main' into v1.9.xCarl Hetherington
2024-04-17Make some not-so-important CPL read errors non-fatal (DoM #2797).v1.8.99Carl Hetherington
2024-03-20Replace xmlpp::Node::add_child with cxml::add_child.Carl Hetherington
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: 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-06-29When reading a DCP set up asset hashes from the CPL/PKL, not by digesting ↵Carl Hetherington
the actual asset. Previously when reading a DCP we would recalculate asset hashes. This meant that corrupted DCPs could be loaded in and their hashes re-written (if nobody checked the new hashes against the ones in the PKL/CPL). It seems better to take the hashes from the metadata. Then if the assets are corrupted and the DCP is re-written the PKL/CPL hashes will be preserved, showing rather than hiding the corruption.
2023-06-27Add verifier check for the actual asset file's ID not being the same as the ↵Carl Hetherington
one in the asset map.
2023-06-27Cleanup: better variable names.Carl Hetherington
2023-06-27Cleanup: const.Carl Hetherington
2023-04-14Replace slightly weird add_font_assets() API.Carl Hetherington
2023-04-14Cleanup: use a find_if().Carl Hetherington
2023-03-01Add include_mca_subdescriptors to DCP::write_xml(), passing it through to ↵Carl Hetherington
the CPL.
2022-04-30Rename PKL::write to PKL::write_xml for consistency.v1.8.17Carl Hetherington
2022-04-26Add move constructor/operator=.dcp-editor3Carl Hetherington
2022-04-25Tidy up write_xml() API a little.Carl Hetherington
2022-04-25Update PKL assets before writing it.Carl Hetherington
2022-04-25Move AssetMap handling out to a separate class.Carl Hetherington
2022-04-24Tidying.Carl Hetherington
2022-04-20Simplify the implementation of DCP::add.Carl Hetherington
2021-04-22Don't give an error on verifying Interop DCPs with possibly-incorrectlyCarl Hetherington
marked 3D assets. This also adds a warning into the verification output. I don't know if this is actually a standard violation but they have been seen in the wild made by "reputable" DCP creation software. DoM bug #1976.
2021-04-14Ignore parameters in PKL type strings when checking them.Carl Hetherington
2021-04-14Fix/hide some warnings.Carl Hetherington
2021-04-12Specify CPL standard on construction.Carl Hetherington
Then choose which standard DCP should use based on the CPL(s).
2021-03-18Improve errors when verifying a non-DCP directory.Carl Hetherington
2021-01-26Rename ReelMXF -> ReelFileAsset.Carl Hetherington
2021-01-24Tidying.Carl Hetherington
2021-01-23Tidying.Carl Hetherington
2021-01-21Some more use of enum class.Carl Hetherington
2021-01-21Use enum class for the things in types.hCarl Hetherington
2021-01-19Tidy up parameters in VerificationNote.Carl Hetherington
2021-01-19Rename encrypted() to any_encrypted() and add all_encrypted().Carl Hetherington
2021-01-17Replace std::list with std::vector in the API.Carl Hetherington
2021-01-08More c++11 tidying.Carl Hetherington
2021-01-08std::shared_ptrCarl Hetherington
2020-10-10Fix crash when loading DCPs whose ASSETMAP contains files that areCarl Hetherington
not mentioned in any PKL (#1855).
2020-09-20Remove XMLMetadata from DCP::write_xml and DCP::write_assetmap.Carl Hetherington
2020-09-17Prevent DCP::assets() from returning duplicates.combineCarl Hetherington
2020-09-17Add dcp::combine().Carl Hetherington
2020-09-11Fix crash with one verification error and no notes list.Carl Hetherington
2020-09-09Add some detail to a verification warning.Carl Hetherington
2020-05-12Add a note when verifying if the DCP refers to assetsCarl Hetherington
that are not mentioned in its ASSETMAP (i.e. a VF).
2020-05-12Improve comment.Carl Hetherington
2020-04-14s/DCPReadError/ReadError/gCarl Hetherington