diff options
| author | Carl Hetherington <cth@carlh.net> | 2016-06-17 23:22:06 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2016-06-17 23:48:22 +0100 |
| commit | ec18743d91476f4a712644179c2d654d8702349c (patch) | |
| tree | 9910d0f689847cd0bb21520aaac68af671d63707 /src/lib | |
| parent | 86ccabf14528318c640d211e79f441ca2dcdf14d (diff) | |
Add preference for the default number of DCP channels (#897).
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/config.cc | 4 | ||||
| -rw-r--r-- | src/lib/config.h | 9 | ||||
| -rw-r--r-- | src/lib/film.cc | 2 |
3 files changed, 14 insertions, 1 deletions
diff --git a/src/lib/config.cc b/src/lib/config.cc index f8debbb4e..891d832a2 100644 --- a/src/lib/config.cc +++ b/src/lib/config.cc @@ -85,6 +85,7 @@ Config::set_defaults () _default_still_length = 10; _default_container = Ratio::from_id ("185"); _default_dcp_content_type = DCPContentType::from_isdcf_name ("FTR"); + _default_dcp_audio_channels = 6; _default_j2k_bandwidth = 100000000; _default_audio_delay = 0; _default_interop = false; @@ -208,6 +209,8 @@ Config::read () _default_dcp_content_type = DCPContentType::from_isdcf_name (c.get ()); } + _default_dcp_audio_channels = f.optional_number_child<int>("DefaultDCPAudioChannels").get_value_or (6); + if (f.optional_string_child ("DCPMetadataIssuer")) { _dcp_issuer = f.string_child ("DCPMetadataIssuer"); } else if (f.optional_string_child ("DCPIssuer")) { @@ -389,6 +392,7 @@ Config::write_config_xml () const if (_default_dcp_content_type) { root->add_child("DefaultDCPContentType")->add_child_text (_default_dcp_content_type->isdcf_name ()); } + root->add_child("DefaultDCPAudioChannels")->add_child_text (raw_convert<string> (_default_dcp_audio_channels)); root->add_child("DCPIssuer")->add_child_text (_dcp_issuer); root->add_child("DCPCreator")->add_child_text (_dcp_creator); diff --git a/src/lib/config.h b/src/lib/config.h index 6baa434a3..1ffcfdb98 100644 --- a/src/lib/config.h +++ b/src/lib/config.h @@ -152,6 +152,10 @@ public: return _default_dcp_content_type; } + int default_dcp_audio_channels () const { + return _default_dcp_audio_channels; + } + std::string dcp_issuer () const { return _dcp_issuer; } @@ -351,6 +355,10 @@ public: maybe_set (_default_dcp_content_type, t); } + void set_default_dcp_audio_channels (int c) { + maybe_set (_default_dcp_audio_channels, c); + } + void set_dcp_issuer (std::string i) { maybe_set (_dcp_issuer, i); } @@ -529,6 +537,7 @@ private: int _default_still_length; Ratio const * _default_container; DCPContentType const * _default_dcp_content_type; + int _default_dcp_audio_channels; std::string _dcp_issuer; std::string _dcp_creator; int _default_j2k_bandwidth; diff --git a/src/lib/film.cc b/src/lib/film.cc index 64550556b..3cd3f0f21 100644 --- a/src/lib/film.cc +++ b/src/lib/film.cc @@ -133,7 +133,7 @@ Film::Film (boost::filesystem::path dir, bool log) , _j2k_bandwidth (Config::instance()->default_j2k_bandwidth ()) , _isdcf_metadata (Config::instance()->default_isdcf_metadata ()) , _video_frame_rate (24) - , _audio_channels (6) + , _audio_channels (Config::instance()->default_dcp_audio_channels ()) , _three_d (false) , _sequence (true) , _interop (Config::instance()->default_interop ()) |
