summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2025-04-12 22:42:32 +0200
committerCarl Hetherington <cth@carlh.net>2025-04-14 18:42:09 +0200
commitec02427b46e95fa2a63ad680e0a9787f2d306305 (patch)
treea68ea22ad9cdc31a4141be2122d017bff80497b5
parentc6c81128909add9908c5a13e156cd91dde001eec (diff)
Bump libdcp for very invalid subtitle duration checks.
-rw-r--r--cscript2
-rw-r--r--src/wx/verify_dcp_result_panel.cc3
-rw-r--r--test/closed_caption_test.cc2
-rw-r--r--test/dcp_subtitle_test.cc6
-rw-r--r--test/reels_test.cc4
-rw-r--r--test/srt_subtitle_test.cc4
-rw-r--r--test/subtitle_language_test.cc6
-rw-r--r--test/subtitle_reel_test.cc2
-rw-r--r--test/vf_test.cc2
9 files changed, 17 insertions, 14 deletions
diff --git a/cscript b/cscript
index 0b63394bc..03f49467d 100644
--- a/cscript
+++ b/cscript
@@ -437,7 +437,7 @@ def build_with_cpp17(target):
def dependencies(target, options):
- deps = [('libdcp', 'v1.10.18', {'c++17': build_with_cpp17(target)})]
+ deps = [('libdcp', 'v1.10.19', {'c++17': build_with_cpp17(target)})]
deps.append(('libsub', 'v1.6.53'))
deps.append(('leqm-nrt', '30dcaea1373ac62fba050e02ce5b0c1085797a23'))
deps.append(('rtaudio', 'f619b76'))
diff --git a/src/wx/verify_dcp_result_panel.cc b/src/wx/verify_dcp_result_panel.cc
index 13ea02091..07ae65e84 100644
--- a/src/wx/verify_dcp_result_panel.cc
+++ b/src/wx/verify_dcp_result_panel.cc
@@ -361,6 +361,9 @@ VerifyDCPResultPanel::add(shared_ptr<const VerifyDCPJob> job, bool many)
add(i.second, _("The first subtitle or closed caption happens before 4s into the first reel."));
break;
case dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION:
+ add(i.second, _("At least one subtitle has zero or negative duration."));
+ break;
+ case dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21:
add(i.second, _("At least one subtitle lasts less than 15 frames."));
break;
case dcp::VerificationNote::Code::INVALID_SUBTITLE_SPACING:
diff --git a/test/closed_caption_test.cc b/test/closed_caption_test.cc
index 75890f87f..c8ef6865d 100644
--- a/test/closed_caption_test.cc
+++ b/test/closed_caption_test.cc
@@ -86,7 +86,7 @@ BOOST_AUTO_TEST_CASE (closed_caption_test2)
make_and_verify_dcp (
film,
{
- dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION,
+ dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21,
dcp::VerificationNote::Code::INVALID_CLOSED_CAPTION_LINE_LENGTH,
dcp::VerificationNote::Code::MISSING_CPL_METADATA,
dcp::VerificationNote::Code::INVALID_SUBTITLE_FIRST_TEXT_TIME,
diff --git a/test/dcp_subtitle_test.cc b/test/dcp_subtitle_test.cc
index df151e108..3888a7b53 100644
--- a/test/dcp_subtitle_test.cc
+++ b/test/dcp_subtitle_test.cc
@@ -276,7 +276,7 @@ BOOST_AUTO_TEST_CASE(entity_from_dcp_source)
dcp::VerificationNote::Code::MISSING_SUBTITLE_LANGUAGE,
dcp::VerificationNote::Code::INVALID_SUBTITLE_FIRST_TEXT_TIME,
dcp::VerificationNote::Code::MISSING_CPL_METADATA,
- dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION,
+ dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21,
dcp::VerificationNote::Code::INVALID_SUBTITLE_SPACING,
});
@@ -304,7 +304,7 @@ BOOST_AUTO_TEST_CASE(entity_from_dcp_source)
dcp::VerificationNote::Code::MISSING_SUBTITLE_LANGUAGE,
dcp::VerificationNote::Code::INVALID_SUBTITLE_FIRST_TEXT_TIME,
dcp::VerificationNote::Code::MISSING_CPL_METADATA,
- dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION,
+ dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21,
dcp::VerificationNote::Code::INVALID_SUBTITLE_SPACING,
});
@@ -338,7 +338,7 @@ BOOST_AUTO_TEST_CASE(dcp_subtitle_trim_test)
{
dcp::VerificationNote::Code::INVALID_SUBTITLE_FIRST_TEXT_TIME,
dcp::VerificationNote::Code::MISSING_CPL_METADATA,
- dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION,
+ dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21,
});
dcp::SMPTETextAsset asset(find_file(film->dir(film->dcp_name()), "sub_"));
diff --git a/test/reels_test.cc b/test/reels_test.cc
index cc200c94d..b79bd4e17 100644
--- a/test/reels_test.cc
+++ b/test/reels_test.cc
@@ -222,7 +222,7 @@ BOOST_AUTO_TEST_CASE (reels_test4)
{
dcp::VerificationNote::Code::MISSING_SUBTITLE_LANGUAGE,
dcp::VerificationNote::Code::INVALID_SUBTITLE_FIRST_TEXT_TIME,
- dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION
+ dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21
});
check_dcp ("test/data/reels_test4", film->dir (film->dcp_name()));
@@ -393,7 +393,7 @@ BOOST_AUTO_TEST_CASE (reels_test10)
dcp::VerificationNote::Code::EXTERNAL_ASSET,
dcp::VerificationNote::Code::MISSING_SUBTITLE_LANGUAGE,
dcp::VerificationNote::Code::INVALID_SUBTITLE_FIRST_TEXT_TIME,
- dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION,
+ dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21,
},
false);
}
diff --git a/test/srt_subtitle_test.cc b/test/srt_subtitle_test.cc
index 7bfbf1cbe..7af5426dc 100644
--- a/test/srt_subtitle_test.cc
+++ b/test/srt_subtitle_test.cc
@@ -193,7 +193,7 @@ BOOST_AUTO_TEST_CASE (srt_subtitle_test6)
dcp::VerificationNote::Code::MISSING_SUBTITLE_LANGUAGE,
dcp::VerificationNote::Code::INVALID_SUBTITLE_FIRST_TEXT_TIME,
dcp::VerificationNote::Code::MISSING_CPL_METADATA,
- dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION,
+ dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21,
dcp::VerificationNote::Code::INVALID_SUBTITLE_SPACING,
});
@@ -225,7 +225,7 @@ BOOST_AUTO_TEST_CASE(srt_subtitle_entity)
dcp::VerificationNote::Code::MISSING_SUBTITLE_LANGUAGE,
dcp::VerificationNote::Code::INVALID_SUBTITLE_FIRST_TEXT_TIME,
dcp::VerificationNote::Code::MISSING_CPL_METADATA,
- dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION,
+ dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21,
dcp::VerificationNote::Code::INVALID_SUBTITLE_SPACING,
});
diff --git a/test/subtitle_language_test.cc b/test/subtitle_language_test.cc
index a1a45eb42..789412912 100644
--- a/test/subtitle_language_test.cc
+++ b/test/subtitle_language_test.cc
@@ -53,7 +53,7 @@ BOOST_AUTO_TEST_CASE (subtitle_language_interop_test)
{
dcp::VerificationNote::Code::INVALID_STANDARD,
dcp::VerificationNote::Code::INVALID_SUBTITLE_SPACING,
- dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION
+ dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21,
},
false,
/* clairmeta raises errors about subtitle spacing/duration */
@@ -78,7 +78,7 @@ BOOST_AUTO_TEST_CASE (subtitle_language_smpte_test)
{
dcp::VerificationNote::Code::MISSING_SUBTITLE_LANGUAGE,
dcp::VerificationNote::Code::INVALID_SUBTITLE_FIRST_TEXT_TIME,
- dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION,
+ dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21,
dcp::VerificationNote::Code::INVALID_SUBTITLE_SPACING,
dcp::VerificationNote::Code::MISSING_CPL_METADATA
});
@@ -105,7 +105,7 @@ BOOST_AUTO_TEST_CASE(subtitle_language_in_cpl_test)
film,
{
dcp::VerificationNote::Code::INVALID_SUBTITLE_FIRST_TEXT_TIME,
- dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION,
+ dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21,
dcp::VerificationNote::Code::INVALID_SUBTITLE_SPACING
});
diff --git a/test/subtitle_reel_test.cc b/test/subtitle_reel_test.cc
index d72a543fd..b9c2541fd 100644
--- a/test/subtitle_reel_test.cc
+++ b/test/subtitle_reel_test.cc
@@ -254,7 +254,7 @@ BOOST_AUTO_TEST_CASE(bad_subtitle_not_created_at_reel_boundaries)
film,
{
dcp::VerificationNote::Code::MISSING_CPL_METADATA,
- dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION,
+ dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21,
dcp::VerificationNote::Code::INVALID_SUBTITLE_SPACING,
});
}
diff --git a/test/vf_test.cc b/test/vf_test.cc
index 2b59b68ba..a0c48c5a6 100644
--- a/test/vf_test.cc
+++ b/test/vf_test.cc
@@ -128,7 +128,7 @@ BOOST_AUTO_TEST_CASE (vf_test2)
dcp::VerificationNote::Code::EXTERNAL_ASSET,
dcp::VerificationNote::Code::MISSING_SUBTITLE_LANGUAGE,
dcp::VerificationNote::Code::INVALID_SUBTITLE_FIRST_TEXT_TIME,
- dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION
+ dcp::VerificationNote::Code::INVALID_SUBTITLE_DURATION_BV21,
},
false
);