* note contains the invalid language
*/
INVALID_LANGUAGE,
+ VALID_RELEASE_TERRITORY,
/** A picture asset does not have one of the required Bv2.1 sizes (in pixels) [Bv2.1_7.1]
* note contains the incorrect size as "<width>x<height>"
* file contains the asset filename
* file contains the CPL filename
*/
MISMATCHED_CPL_ANNOTATION_TEXT,
+ VALID_CPL_ANNOTATION_TEXT,
/** At least one asset in a reel does not have the same duration as the others */
MISMATCHED_ASSET_DURATION,
/** If one reel has a _MainSubtitle_, all must have them */
* file contains the PKL filename
*/
MISMATCHED_PKL_ANNOTATION_TEXT_WITH_CPL,
+ MATCHING_PKL_ANNOTATION_TEXT_WITH_CPL,
/** All content is encrypted */
ALL_ENCRYPTED,
/** No content is encrypted */
UNEXPECTED_DURATION,
/** A <ContentKind> has been specified with either no scope or the SMPTE 429-7 scope, but which is not one of those allowed */
INVALID_CONTENT_KIND,
+ VALID_CONTENT_KIND,
/** Either the width or height of a <MainPictureActiveArea> in a CPL is either not an even number, or bigger than the corresponding asset dimension.
* note contains details of what is wrong
* file contains the CPL filename
*/
INVALID_MAIN_PICTURE_ACTIVE_AREA,
+ VALID_MAIN_PICTURE_ACTIVE_AREA,
/** A PKL has more than one asset with the same ID
* note contains the PKL ID
* file contains the PKL filename
* file contains the CPL filename
*/
EMPTY_CONTENT_VERSION_LABEL_TEXT,
+ VALID_CONTENT_VERSION_LABEL_TEXT,
};
VerificationNote (Type type, Code code)
};
-struct VerifyResult
+struct VerificationResult
{
std::vector<VerificationNote> notes;
std::vector<std::shared_ptr<dcp::DCP>> dcps;
};
-VerifyResult verify(
+VerificationResult verify(
std::vector<boost::filesystem::path> directories,
std::vector<dcp::DecryptedKDM> kdms,
std::function<void (std::string, boost::optional<boost::filesystem::path>)> stage,
boost::optional<boost::filesystem::path> xsd_dtd_directory = boost::optional<boost::filesystem::path>()
);
-std::string note_to_string (dcp::VerificationNote note);
+std::string note_to_string(
+ dcp::VerificationNote note,
+ std::function<std::string (std::string)> process_string = [](std::string s) { return s; },
+ std::function<std::string (std::string)> process_filename = [](std::string s) { return s; }
+ );
bool operator== (dcp::VerificationNote const& a, dcp::VerificationNote const& b);
bool operator!=(dcp::VerificationNote const& a, dcp::VerificationNote const& b);