diff options
| author | Carl Hetherington <cth@carlh.net> | 2013-03-02 19:16:25 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2013-03-02 19:16:25 +0000 |
| commit | 99d2e172f5c7fae21e5126a063014727871e9948 (patch) | |
| tree | 1d796a5c0dd91c9d44cb0e360c8668a9b3acc29d /src/lib | |
| parent | 53eb16342d492236aca77e4b73c0911a5d5eec9f (diff) | |
Add similar format description,
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/format.cc | 85 | ||||
| -rw-r--r-- | src/lib/format.h | 12 | ||||
| -rw-r--r-- | src/lib/util.cc | 8 | ||||
| -rw-r--r-- | src/lib/util.h | 2 |
4 files changed, 82 insertions, 25 deletions
diff --git a/src/lib/format.cc b/src/lib/format.cc index 0e4830cd7..b506c7000 100644 --- a/src/lib/format.cc +++ b/src/lib/format.cc @@ -71,19 +71,70 @@ void Format::setup_formats () { /// TRANSLATORS: these are film picture aspect ratios; "Academy" means 1.37, "Flat" 1.85 and "Scope" 2.39. - _formats.push_back (new FixedFormat (119, libdcp::Size (1285, 1080), N_("119"), _("1.19"), N_("F"))); - _formats.push_back (new FixedFormat (133, libdcp::Size (1436, 1080), N_("133"), _("1.33"), N_("F"))); - _formats.push_back (new FixedFormat (138, libdcp::Size (1485, 1080), N_("138"), _("1.375"), N_("F"))); - _formats.push_back (new FixedFormat (133, libdcp::Size (1998, 1080), N_("133-in-flat"), _("4:3 within Flat"), N_("F"))); - _formats.push_back (new FixedFormat (137, libdcp::Size (1480, 1080), N_("137"), _("Academy"), N_("F"))); - _formats.push_back (new FixedFormat (166, libdcp::Size (1793, 1080), N_("166"), _("1.66"), N_("F"))); - _formats.push_back (new FixedFormat (166, libdcp::Size (1998, 1080), N_("166-in-flat"), _("1.66 within Flat"), N_("F"))); - _formats.push_back (new FixedFormat (178, libdcp::Size (1998, 1080), N_("178-in-flat"), _("16:9 within Flat"), N_("F"))); - _formats.push_back (new FixedFormat (178, libdcp::Size (1920, 1080), N_("178"), _("16:9"), N_("F"))); - _formats.push_back (new FixedFormat (185, libdcp::Size (1998, 1080), N_("185"), _("Flat"), N_("F"))); - _formats.push_back (new FixedFormat (239, libdcp::Size (2048, 858), N_("239"), _("Scope"), N_("S"))); - _formats.push_back (new VariableFormat (libdcp::Size (1998, 1080), N_("var-185"), _("Flat"), N_("F"))); - _formats.push_back (new VariableFormat (libdcp::Size (2048, 858), N_("var-239"), _("Scope"), N_("S"))); + _formats.push_back ( + new FixedFormat (119, libdcp::Size (1285, 1080), N_("119"), _("1.19"), N_("F"), + _("Source scaled to 1.19:1") + )); + + _formats.push_back ( + new FixedFormat (133, libdcp::Size (1436, 1080), N_("133"), _("1.33"), N_("F"), + _("Source scaled to 1.33:1") + )); + + _formats.push_back ( + new FixedFormat (138, libdcp::Size (1485, 1080), N_("138"), _("1.375"), N_("F"), + _("Source scaled to 1.375:1") + )); + + _formats.push_back ( + new FixedFormat (133, libdcp::Size (1998, 1080), N_("133-in-flat"), _("4:3 within Flat"), N_("F"), + _("Source scaled to 1.33:1 then pillarboxed to Flat") + )); + + _formats.push_back ( + new FixedFormat (137, libdcp::Size (1480, 1080), N_("137"), _("Academy"), N_("F"), + _("Source scaled to 1.37:1 (Academy ratio)") + )); + + _formats.push_back ( + new FixedFormat (166, libdcp::Size (1793, 1080), N_("166"), _("1.66"), N_("F"), + _("Source scaled to 1.66:1") + )); + + _formats.push_back ( + new FixedFormat (166, libdcp::Size (1998, 1080), N_("166-in-flat"), _("1.66 within Flat"), N_("F"), + _("Source scaled to 1.66:1 then pillarboxed to Flat") + )); + + _formats.push_back ( + new FixedFormat (178, libdcp::Size (1998, 1080), N_("178-in-flat"), _("16:9 within Flat"), N_("F"), + _("Source scaled to 1.78:1 then pillarboxed to Flat") + )); + + _formats.push_back ( + new FixedFormat (178, libdcp::Size (1920, 1080), N_("178"), _("16:9"), N_("F"), + _("Source scaled to 1.78:1") + )); + + _formats.push_back ( + new FixedFormat (185, libdcp::Size (1998, 1080), N_("185"), _("Flat"), N_("F"), + _("Source scaled to Flat (1.85:1)") + )); + + _formats.push_back ( + new FixedFormat (239, libdcp::Size (2048, 858), N_("239"), _("Scope"), N_("S"), + _("Source scaled to Scope (2.39:1)") + )); + + _formats.push_back ( + new VariableFormat (libdcp::Size (1998, 1080), N_("var-185"), _("Flat without stretch"), N_("F"), + _("Source scaled to fit Flat preserving its aspect ratio") + )); + + _formats.push_back ( + new VariableFormat (libdcp::Size (2048, 858), N_("var-239"), _("Scope without stretch"), N_("S"), + _("Source scaled to fit Scope preserving its aspect ratio") + )); } /** @param n Nickname. @@ -144,8 +195,8 @@ Format::all () * @param id ID (e.g. 185) * @param n Nick name (e.g. Flat) */ -FixedFormat::FixedFormat (int r, libdcp::Size dcp, string id, string n, string d) - : Format (dcp, id, n, d) +FixedFormat::FixedFormat (int r, libdcp::Size dcp, string id, string n, string d, string e) + : Format (dcp, id, n, d, e) , _ratio (r) { @@ -173,8 +224,8 @@ Format::container_ratio_as_float () const return static_cast<float> (_dcp_size.width) / _dcp_size.height; } -VariableFormat::VariableFormat (libdcp::Size dcp, string id, string n, string d) - : Format (dcp, id, n, d) +VariableFormat::VariableFormat (libdcp::Size dcp, string id, string n, string d, string e) + : Format (dcp, id, n, d, e) { } diff --git a/src/lib/format.h b/src/lib/format.h index 783ff25ce..305524628 100644 --- a/src/lib/format.h +++ b/src/lib/format.h @@ -31,11 +31,12 @@ class Film; class Format { public: - Format (libdcp::Size dcp, std::string id, std::string n, std::string d) + Format (libdcp::Size dcp, std::string id, std::string n, std::string d, std::string e) : _dcp_size (dcp) , _id (id) , _nickname (n) , _dci_name (d) + , _description (e) {} /** @return the aspect ratio multiplied by 100 @@ -75,6 +76,10 @@ public: return _dci_name; } + std::string description () const { + return _description; + } + std::string as_metadata () const; static Format const * from_nickname (std::string n); @@ -94,6 +99,7 @@ protected: /** nickname (e.g. Flat, Scope) */ std::string _nickname; std::string _dci_name; + std::string _description; private: /** all available formats */ @@ -107,7 +113,7 @@ private: class FixedFormat : public Format { public: - FixedFormat (int, libdcp::Size, std::string, std::string, std::string); + FixedFormat (int, libdcp::Size, std::string, std::string, std::string, std::string); int ratio_as_integer (boost::shared_ptr<const Film>) const { return _ratio; @@ -128,7 +134,7 @@ private: class VariableFormat : public Format { public: - VariableFormat (libdcp::Size, std::string, std::string, std::string); + VariableFormat (libdcp::Size, std::string, std::string, std::string, std::string); int ratio_as_integer (boost::shared_ptr<const Film> f) const; float ratio_as_float (boost::shared_ptr<const Film> f) const; diff --git a/src/lib/util.cc b/src/lib/util.cc index d1450ccc2..71e864ebd 100644 --- a/src/lib/util.cc +++ b/src/lib/util.cc @@ -962,17 +962,17 @@ FrameRateConversion::FrameRateConversion (float source, int dcp) change_speed = !about_equal (source * factor(), dcp); if (!skip && !repeat && !change_speed) { - explanation = _("DCP and source have the same rate.\n"); + description = _("DCP and source have the same rate.\n"); } else { if (skip) { - explanation = _("DCP will use every other frame of the source.\n"); + description = _("DCP will use every other frame of the source.\n"); } else if (repeat) { - explanation = _("Each source frame will be doubled in the DCP.\n"); + description = _("Each source frame will be doubled in the DCP.\n"); } if (change_speed) { float const pc = (source * factor()) * 100 / dcp; - explanation += String::compose (_("DCP will run at %1%% of the source speed."), pc); + description += String::compose (_("DCP will run at %1%% of the source speed."), pc); } } } diff --git a/src/lib/util.h b/src/lib/util.h index b0f405890..ec67469c1 100644 --- a/src/lib/util.h +++ b/src/lib/util.h @@ -94,7 +94,7 @@ struct FrameRateConversion */ bool change_speed; - std::string explanation; + std::string description; }; int best_dcp_frame_rate (float); |
