summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2024-06-18 17:28:20 +0200
committerCarl Hetherington <cth@carlh.net>2024-06-18 17:28:20 +0200
commitdde463561f8e159008effc3505ebc2f088d1f8f2 (patch)
tree45a46d0984514177627261b602089de00ae9ca1c
parent59f4902bc3971f948b0cd0c3fceb0edb8667bff7 (diff)
Add discouraging hint for MPEG2 (#2821).
-rw-r--r--src/lib/hints.cc10
-rw-r--r--src/lib/hints.h1
-rw-r--r--test/hints_test.cc13
3 files changed, 24 insertions, 0 deletions
diff --git a/src/lib/hints.cc b/src/lib/hints.cc
index e7a393103..1114d0acb 100644
--- a/src/lib/hints.cc
+++ b/src/lib/hints.cc
@@ -264,6 +264,15 @@ Hints::check_interop ()
void
+Hints::check_video_encoding()
+{
+ if (film()->video_encoding() == VideoEncoding::MPEG2) {
+ hint(_("The vast majority of cinemas in Europe, Australasia and North America expect DCPs encoded with JPEG2000 rather than MPEG2. Make sure that your cinema really wants an old-style MPEG2 DCP."));
+ }
+}
+
+
+void
Hints::check_big_font_files ()
{
bool big_font_files = false;
@@ -463,6 +472,7 @@ try
check_certificates ();
check_interop ();
+ check_video_encoding();
check_big_font_files ();
check_few_audio_channels ();
check_upmixers ();
diff --git a/src/lib/hints.h b/src/lib/hints.h
index a46678af8..9e94f210f 100644
--- a/src/lib/hints.h
+++ b/src/lib/hints.h
@@ -69,6 +69,7 @@ private:
void check_certificates ();
void check_interop ();
+ void check_video_encoding();
void check_big_font_files ();
void check_few_audio_channels ();
void check_upmixers ();
diff --git a/test/hints_test.cc b/test/hints_test.cc
index 56a0964c4..1b510f9e7 100644
--- a/test/hints_test.cc
+++ b/test/hints_test.cc
@@ -296,3 +296,16 @@ BOOST_AUTO_TEST_CASE (hints_certificate_validity)
);
}
+
+BOOST_AUTO_TEST_CASE(hints_mpeg2)
+{
+ auto film = new_test_film("hints_certificate_validity");
+ film->set_video_encoding(VideoEncoding::MPEG2);
+ auto hints = get_hints(film);
+ BOOST_REQUIRE_EQUAL(hints.size(), 1U);
+ BOOST_CHECK_EQUAL(
+ hints[0],
+ "The vast majority of cinemas in Europe, Australasia and North America expect DCPs "
+ "encoded with JPEG2000 rather than MPEG2. Make sure that your cinema really wants an old-style MPEG2 DCP."
+ );
+}