_default_dcp_audio_channels = 6;
_default_j2k_bandwidth = 150000000;
_default_audio_delay = 0;
- _default_interop = true;
+ _default_interop = false;
+ _default_metadata.clear ();
_upload_after_make_dcp = false;
_mail_server = "";
_mail_port = 25;
_player_playlist_directory = boost::none;
_player_kdm_directory = boost::none;
_audio_mapping = boost::none;
- _minimum_frame_size = 65536;
_custom_languages.clear ();
+ _add_files_path = boost::none;
_allowed_dcp_frame_rates.clear ();
_allowed_dcp_frame_rates.push_back (24);
_default_j2k_bandwidth = f.optional_number_child<int>("DefaultJ2KBandwidth").get_value_or (200000000);
_default_audio_delay = f.optional_number_child<int>("DefaultAudioDelay").get_value_or (0);
_default_interop = f.optional_bool_child("DefaultInterop").get_value_or (false);
+
+ for (auto const& i: f.node_children("DefaultMetadata")) {
+ _default_metadata[i->string_attribute("key")] = i->content();
+ }
+
_default_kdm_directory = f.optional_string_child("DefaultKDMDirectory");
/* Read any cinemas that are still lying around in the config file
_audio_mapping = AudioMapping (f.node_child("AudioMapping"), Film::current_state_version);
}
- _minimum_frame_size = f.optional_number_child<int>("MinimumFrameSize").get_value_or(65536);
-
for (auto i: f.node_children("CustomLanguage")) {
try {
/* This will fail if it's called before dcp::init() as it won't recognise the
} catch (std::runtime_error& e) {}
}
+ _add_files_path = f.optional_string_child("AddFilesPath");
+
if (boost::filesystem::exists (_cinemas_file)) {
cxml::Document f ("Cinemas");
f.read_file (_cinemas_file);
root->add_child("DefaultAudioDelay")->add_child_text (raw_convert<string> (_default_audio_delay));
/* [XML] DefaultInterop 1 to default new films to Interop, 0 for SMPTE. */
root->add_child("DefaultInterop")->add_child_text (_default_interop ? "1" : "0");
+ for (auto const& i: _default_metadata) {
+ auto c = root->add_child("DefaultMetadata");
+ c->set_attribute("key", i.first);
+ c->add_child_text(i.second);
+ }
if (_default_kdm_directory) {
/* [XML:opt] DefaultKDMDirectory Default directory to write KDMs to. */
root->add_child("DefaultKDMDirectory")->add_child_text (_default_kdm_directory->string ());
if (_audio_mapping) {
_audio_mapping->as_xml (root->add_child("AudioMapping"));
}
- root->add_child("MinimumFrameSize")->add_child_text(raw_convert<string>(_minimum_frame_size));
for (auto const& i: _custom_languages) {
root->add_child("CustomLanguage")->add_child_text(i.to_string());
}
+ if (_add_files_path) {
+ /* [XML] The default path that will be offered in the picker when adding files to a film */
+ root->add_child("AddFilesPath")->add_child_text(_add_files_path->string());
+ }
try {
auto const s = doc.write_to_string_formatted ();