From ecb9344aedd1beac90668cba46e0f22bd7c7bd9f Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Thu, 14 Jan 2021 23:38:30 +0100 Subject: Bv2.1 8.2: all parts of a reel must have the same duration. --- test/verify_test.cc | 37 +++++++++++++++++++++++++++++++------ 1 file changed, 31 insertions(+), 6 deletions(-) (limited to 'test/verify_test.cc') diff --git a/test/verify_test.cc b/test/verify_test.cc index 6ed6b092..86b98d2b 100644 --- a/test/verify_test.cc +++ b/test/verify_test.cc @@ -1139,7 +1139,7 @@ BOOST_AUTO_TEST_CASE (verify_missing_language_tag_in_subtitle_xml) { boost::filesystem::path dir = "build/test/verify_missing_language_tag_in_subtitle_xml"; prepare_directory (dir); - auto dcp = make_simple (dir, 1); + auto dcp = make_simple (dir, 1, 240); string const xml = "" @@ -1169,7 +1169,7 @@ BOOST_AUTO_TEST_CASE (verify_missing_language_tag_in_subtitle_xml) auto subs = make_shared(dir / "subs.xml"); subs->write (dir / "subs.mxf"); - auto reel_subs = make_shared(subs, dcp::Fraction(24, 1), 100, 0); + auto reel_subs = make_shared(subs, dcp::Fraction(24, 1), 240, 0); dcp->cpls().front()->reels().front()->add(reel_subs); dcp->write_xml (dcp::SMPTE); @@ -1222,7 +1222,7 @@ BOOST_AUTO_TEST_CASE (verify_missing_start_time_tag_in_subtitle_xml) { boost::filesystem::path dir = "build/test/verify_missing_start_time_tag_in_subtitle_xml"; prepare_directory (dir); - auto dcp = make_simple (dir, 1); + auto dcp = make_simple (dir, 1, 240); string const xml = "" @@ -1252,7 +1252,7 @@ BOOST_AUTO_TEST_CASE (verify_missing_start_time_tag_in_subtitle_xml) auto subs = make_shared(dir / "subs.xml"); subs->write (dir / "subs.mxf"); - auto reel_subs = make_shared(subs, dcp::Fraction(24, 1), 100, 0); + auto reel_subs = make_shared(subs, dcp::Fraction(24, 1), 240, 0); dcp->cpls().front()->reels().front()->add(reel_subs); dcp->write_xml (dcp::SMPTE); @@ -1269,7 +1269,7 @@ BOOST_AUTO_TEST_CASE (verify_non_zero_start_time_tag_in_subtitle_xml) { boost::filesystem::path dir = "build/test/verify_non_zero_start_time_tag_in_subtitle_xml"; prepare_directory (dir); - auto dcp = make_simple (dir, 1); + auto dcp = make_simple (dir, 1, 240); string const xml = "" @@ -1300,7 +1300,7 @@ BOOST_AUTO_TEST_CASE (verify_non_zero_start_time_tag_in_subtitle_xml) auto subs = make_shared(dir / "subs.xml"); subs->write (dir / "subs.mxf"); - auto reel_subs = make_shared(subs, dcp::Fraction(24, 1), 100, 0); + auto reel_subs = make_shared(subs, dcp::Fraction(24, 1), 240, 0); dcp->cpls().front()->reels().front()->add(reel_subs); dcp->write_xml (dcp::SMPTE); @@ -1673,3 +1673,28 @@ BOOST_AUTO_TEST_CASE (verify_cpl_annotation_text_should_be_same_as_content_title }); } + +BOOST_AUTO_TEST_CASE (verify_reel_assets_durations_must_match) +{ + boost::filesystem::path const dir("build/test/verify_reel_assets_durations_must_match"); + boost::filesystem::remove_all (dir); + boost::filesystem::create_directories (dir); + shared_ptr dcp (new dcp::DCP(dir)); + shared_ptr cpl (new dcp::CPL("A Test DCP", dcp::FEATURE)); + + shared_ptr mp = simple_picture (dir, "", 24); + shared_ptr ms = simple_sound (dir, "", dcp::MXFMetadata(), "en-US", 25); + + cpl->add ( + make_shared( + make_shared(mp, 0), + make_shared(ms, 0) + ) + ); + + dcp->add (cpl); + dcp->write_xml (dcp::SMPTE); + + check_verify_result ({dir}, {{ dcp::VerificationNote::VERIFY_BV21_ERROR, dcp::VerificationNote::MISMATCHED_ASSET_DURATION }}); +} + -- cgit v1.2.3