diff options
| author | Carl Hetherington <cth@carlh.net> | 2013-10-16 22:52:55 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2013-10-16 22:52:55 +0100 |
| commit | e45fe284b7c334d64c2fe105c0564c5015d3747f (patch) | |
| tree | f98907d190b9d79376f7dc7a601e22c13c42b614 /src/tools/dcpomatic_kdm.cc | |
| parent | 4ed8eafd541c2c5867795db56c440e444cc0aeff (diff) | |
Allow specification of DCP to build KDMs for (#235).
Diffstat (limited to 'src/tools/dcpomatic_kdm.cc')
| -rw-r--r-- | src/tools/dcpomatic_kdm.cc | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/tools/dcpomatic_kdm.cc b/src/tools/dcpomatic_kdm.cc index d3891c67c..7027b7378 100644 --- a/src/tools/dcpomatic_kdm.cc +++ b/src/tools/dcpomatic_kdm.cc @@ -218,6 +218,16 @@ int main (int argc, char* argv[]) cout << "Making KDMs valid from " << valid_from.get() << " to " << valid_to.get() << "\n"; } + /* XXX: allow specification of this */ + list<boost::filesystem::path> dcps = film->dcps (); + if (dcps.empty ()) { + error ("no DCPs found in film"); + } else if (dcps.size() > 1) { + error ("more than one DCP found in film"); + } + + boost::filesystem::path dcp = dcps.front (); + if (cinema_name.empty ()) { if (output.empty ()) { @@ -225,7 +235,7 @@ int main (int argc, char* argv[]) } shared_ptr<libdcp::Certificate> certificate (new libdcp::Certificate (boost::filesystem::path (certificate_file))); - libdcp::KDM kdm = film->make_kdm (certificate, valid_from.get(), valid_to.get()); + libdcp::KDM kdm = film->make_kdm (certificate, dcp, valid_from.get(), valid_to.get()); kdm.as_xml (output); if (verbose) { cout << "Generated KDM " << output << " for certificate.\n"; @@ -249,12 +259,12 @@ int main (int argc, char* argv[]) try { if (zip) { - write_kdm_zip_files (film, (*i)->screens(), valid_from.get(), valid_to.get(), output); + write_kdm_zip_files (film, (*i)->screens(), dcp, valid_from.get(), valid_to.get(), output); if (verbose) { cout << "Wrote ZIP files to " << output << "\n"; } } else { - write_kdm_files (film, (*i)->screens(), valid_from.get(), valid_to.get(), output); + write_kdm_files (film, (*i)->screens(), dcp, valid_from.get(), valid_to.get(), output); if (verbose) { cout << "Wrote KDM files to " << output << "\n"; } |
