summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2018-01-02 17:48:54 +0000
committerCarl Hetherington <cth@carlh.net>2018-01-02 17:48:54 +0000
commit9458457504af5548bc51b3c29e65dbe92fd0513d (patch)
tree848f587f33cd8b00eb7cac3704960633c89a13f3
parent6375948ecd5ae22b045ed5bd518d8b05345e8c68 (diff)
Add test for incorrect ISDCF name with full-frame content, and fix it (#1118).
-rw-r--r--ChangeLog2
-rw-r--r--src/lib/config.cc2
-rw-r--r--src/lib/hints.cc4
-rw-r--r--src/lib/ratio.cc22
-rw-r--r--test/isdcf_name_test.cc3
-rw-r--r--test/ratio_test.cc2
6 files changed, 20 insertions, 15 deletions
diff --git a/ChangeLog b/ChangeLog
index 29e00378c..f99f1d3eb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
2018-01-02 Carl Hetherington <cth@carlh.net>
+ * Fix generated ISDCF name with full-frame content (#1118).
+
* Fix downloading of certificates on Windows (#1124).
* Version 2.11.34 released.
diff --git a/src/lib/config.cc b/src/lib/config.cc
index 8dabcb71d..48568975e 100644
--- a/src/lib/config.cc
+++ b/src/lib/config.cc
@@ -496,7 +496,7 @@ Config::write_config () const
if (_default_container) {
/* [XML:opt] DefaultContainer ID of default container
* to use when creating new films (<code>185</code>,<code>239</code> or
- * <code>full-frame</code>).
+ * <code>190</code>).
*/
root->add_child("DefaultContainer")->add_child_text (_default_container->id ());
}
diff --git a/src/lib/hints.cc b/src/lib/hints.cc
index eb3cc73aa..b5edd7cc4 100644
--- a/src/lib/hints.cc
+++ b/src/lib/hints.cc
@@ -83,7 +83,7 @@ get_hints (shared_ptr<const Film> film)
Ratio const * r = i->video->scale().ratio ();
if (r && r->id() == "239") {
++scope;
- } else if (r && r->id() != "239" && r->id() != "full-frame") {
+ } else if (r && r->id() != "239" && r->id() != "190") {
++flat_or_narrower;
}
}
@@ -99,7 +99,7 @@ get_hints (shared_ptr<const Film> film)
hints.push_back (_("All of your content is at 1.85:1 or narrower but your DCP's container is Scope (2.39:1). This will pillar-box your content inside a Flat (1.85:1) frame. You may prefer to set your DCP's container to Flat (1.85:1) in the \"DCP\" tab."));
}
- if (film_container != "185" && film_container != "239" && film_container != "full-frame") {
+ if (film_container != "185" && film_container != "239" && film_container != "190") {
hints.push_back (_("Your DCP uses an unusual container ratio. This may cause problems on some projectors. If possible, use Flat or Scope for the DCP container ratio"));
}
diff --git a/src/lib/ratio.cc b/src/lib/ratio.cc
index 40be9558f..eae12b061 100644
--- a/src/lib/ratio.cc
+++ b/src/lib/ratio.cc
@@ -34,16 +34,16 @@ vector<Ratio const *> Ratio::_ratios;
void
Ratio::setup_ratios ()
{
- _ratios.push_back (new Ratio (float(1290) / 1080, "119", _("1.19"), optional<string>(), "119"));
- _ratios.push_back (new Ratio (float(1440) / 1080, "133", _("1.33 (4:3)"), optional<string>(), "133"));
- _ratios.push_back (new Ratio (float(1485) / 1080, "138", _("1.38 (Academy)"), optional<string>(), "137"));
- _ratios.push_back (new Ratio (float(1544) / 1080, "143", _("1.43 (IMAX)"), optional<string>(), "143"));
- _ratios.push_back (new Ratio (float(1800) / 1080, "166", _("1.66"), optional<string>(), "166"));
- _ratios.push_back (new Ratio (float(1920) / 1080, "178", _("1.78 (16:9 or HD)"), optional<string>(), "178"));
- _ratios.push_back (new Ratio (float(1998) / 1080, "185", _("1.85 (Flat)"), string(_("DCI Flat")), "F"));
- _ratios.push_back (new Ratio (float(2048) / 872, "235", _("2.35 (35mm Scope)"), optional<string>(), "S"));
- _ratios.push_back (new Ratio (float(2048) / 858, "239", _("2.39 (Scope)"), string(_("DCI Scope")), "S"));
- _ratios.push_back (new Ratio (float(2048) / 1080, "full-frame", _("1.90 (Full frame)"), string(_("Full frame")), "C"));
+ _ratios.push_back (new Ratio (float(1290) / 1080, "119", _("1.19"), optional<string>(), "119"));
+ _ratios.push_back (new Ratio (float(1440) / 1080, "133", _("1.33 (4:3)"), optional<string>(), "133"));
+ _ratios.push_back (new Ratio (float(1485) / 1080, "138", _("1.38 (Academy)"), optional<string>(), "137"));
+ _ratios.push_back (new Ratio (float(1544) / 1080, "143", _("1.43 (IMAX)"), optional<string>(), "143"));
+ _ratios.push_back (new Ratio (float(1800) / 1080, "166", _("1.66"), optional<string>(), "166"));
+ _ratios.push_back (new Ratio (float(1920) / 1080, "178", _("1.78 (16:9 or HD)"), optional<string>(), "178"));
+ _ratios.push_back (new Ratio (float(1998) / 1080, "185", _("1.85 (Flat)"), string(_("DCI Flat")), "F"));
+ _ratios.push_back (new Ratio (float(2048) / 872, "235", _("2.35 (35mm Scope)"), optional<string>(), "S"));
+ _ratios.push_back (new Ratio (float(2048) / 858, "239", _("2.39 (Scope)"), string(_("DCI Scope")), "S"));
+ _ratios.push_back (new Ratio (float(2048) / 1080, "190", _("1.90 (Full frame)"), string(_("Full frame")), "C"));
}
Ratio const *
@@ -105,7 +105,7 @@ Ratio::containers ()
vector<Ratio const *> r;
r.push_back (Ratio::from_id ("185"));
r.push_back (Ratio::from_id ("239"));
- r.push_back (Ratio::from_id ("full-frame"));
+ r.push_back (Ratio::from_id ("190"));
return r;
}
diff --git a/test/isdcf_name_test.cc b/test/isdcf_name_test.cc
index f59e02edf..96ef5a420 100644
--- a/test/isdcf_name_test.cc
+++ b/test/isdcf_name_test.cc
@@ -97,6 +97,9 @@ BOOST_AUTO_TEST_CASE (isdcf_name_test)
content->video->set_scale (VideoContentScale (Ratio::from_id ("239")));
BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_XSN-2_F-239_DE-fr_US-R_4K_DI_20140704_PP_SMPTE_OV");
+
+ content->video->set_scale (VideoContentScale (Ratio::from_id ("190")));
+ BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_XSN-2_F-190_DE-fr_US-R_4K_DI_20140704_PP_SMPTE_OV");
content->video->set_scale (VideoContentScale (Ratio::from_id ("133")));
/* Test 3D */
diff --git a/test/ratio_test.cc b/test/ratio_test.cc
index 573e8899e..43f1d2a15 100644
--- a/test/ratio_test.cc
+++ b/test/ratio_test.cc
@@ -63,7 +63,7 @@ BOOST_AUTO_TEST_CASE (ratio_test)
BOOST_CHECK (r);
BOOST_CHECK_EQUAL (fit_ratio_within (r->ratio(), dcp::Size (2048, 1080)), dcp::Size (2048, 858));
- r = Ratio::from_id ("full-frame");
+ r = Ratio::from_id ("190");
BOOST_CHECK (r);
BOOST_CHECK_EQUAL (fit_ratio_within (r->ratio(), dcp::Size (2048, 1080)), dcp::Size (2048, 1080));
}