diff options
| author | Carl Hetherington <cth@carlh.net> | 2013-10-14 23:01:16 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2013-10-14 23:01:16 +0100 |
| commit | d7adece6d33d86c12a54c3e8f9e65f3bc501e4d7 (patch) | |
| tree | de2d74aabe82d8f8d0b755285ef0c7d3bbb8dab5 | |
| parent | ce09a59720d1a34a610f1e33bdbca986f55f401e (diff) | |
Add Rec. 709 colour conversion preset using Wolfgang Woehl's matrix.
| -rw-r--r-- | ChangeLog | 5 | ||||
| -rw-r--r-- | cscript | 2 | ||||
| -rw-r--r-- | src/lib/config.cc | 11 |
3 files changed, 17 insertions, 1 deletions
@@ -1,5 +1,10 @@ 2013-10-14 Carl Hetherington <cth@carlh.net> + * Add Rec. 709 colour conversion preset using + Wolfgang Woehl's matrix. + +2013-10-14 Carl Hetherington <cth@carlh.net> + * Version 1.15 released. 2013-10-14 Carl Hetherington <cth@carlh.net> @@ -4,7 +4,7 @@ import os def dependencies(target): return (('ffmpeg-cdist', 'b1219246a0cce9a4b916669d506bb33c925225c3'), - ('libdcp', '4e2ee891c692f656d6866dfa5e0cfc47fab5cb90')) + ('libdcp', 'c7f48dfbf82e5233bc8cfc79c5ed057c41d7ba15')) def build(target): cmd = './waf configure --prefix=%s' % target.work_dir_cscript() diff --git a/src/lib/config.cc b/src/lib/config.cc index 79a7b01f1..1a97eaa0d 100644 --- a/src/lib/config.cc +++ b/src/lib/config.cc @@ -71,6 +71,7 @@ Config::Config () _colour_conversions.push_back (PresetColourConversion (_("sRGB"), 2.4, true, libdcp::colour_matrix::srgb_to_xyz, 2.6)); _colour_conversions.push_back (PresetColourConversion (_("sRGB non-linearised"), 2.4, false, libdcp::colour_matrix::srgb_to_xyz, 2.6)); + _colour_conversions.push_back (PresetColourConversion (_("Rec. 709"), 2.4, false, libdcp::colour_matrix::rec709_to_xyz, 2.2)); } void @@ -85,6 +86,8 @@ Config::read () f.read_file (file (false)); optional<string> c; + optional<int> version = f.optional_number_child<int> ("Version"); + _num_local_encoding_threads = f.number_child<int> ("NumLocalEncodingThreads"); _default_directory = f.string_child ("DefaultDirectory"); _server_port = f.number_child<int> ("ServerPort"); @@ -133,6 +136,13 @@ Config::read () _colour_conversions.push_back (PresetColourConversion (*i)); } + if (!version) { + /* Loading version 0 (before Rec. 709 was added as a preset). + Add it in. + */ + _colour_conversions.push_back (PresetColourConversion (_("Rec. 709"), 2.4, false, libdcp::colour_matrix::rec709_to_xyz, 2.2)); + } + list<shared_ptr<cxml::Node> > cin = f.node_children ("Cinema"); for (list<shared_ptr<cxml::Node> >::iterator i = cin.begin(); i != cin.end(); ++i) { /* Slightly grotty two-part construction of Cinema here so that we can use @@ -263,6 +273,7 @@ Config::write () const xmlpp::Document doc; xmlpp::Element* root = doc.create_root_node ("Config"); + root->add_child("Version")->add_child_text ("1"); root->add_child("NumLocalEncodingThreads")->add_child_text (lexical_cast<string> (_num_local_encoding_threads)); root->add_child("DefaultDirectory")->add_child_text (_default_directory.string ()); root->add_child("ServerPort")->add_child_text (lexical_cast<string> (_server_port)); |
