X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Ftools%2Fdcpomatic_kdm.cc;h=3a2068d2bb4c45b848ce864f58cfdd1a673d54ff;hb=060a980527bc0b39e12494fec3c0baaab4c9d086;hp=d3891c67c5091d8c4917c3a874c779704ae72d1d;hpb=895751dcac8caeb03e8af8ba286b4297f8f85e0b;p=dcpomatic.git diff --git a/src/tools/dcpomatic_kdm.cc b/src/tools/dcpomatic_kdm.cc index d3891c67c..3a2068d2b 100644 --- a/src/tools/dcpomatic_kdm.cc +++ b/src/tools/dcpomatic_kdm.cc @@ -49,8 +49,8 @@ help () " --cinemas list known cinemas from the DCP-o-matic settings\n" " --certificate file containing projector certificate\n\n" "For example:\n\n" - "Create KDMs for my_great_movie to play in all of Fred's Cinema's screens for the next two weeks and zip them up.\n\n" - "(Fred's Cinema must have been set up in DCP-o-matic's KDM window)\n" + "Create KDMs for my_great_movie to play in all of Fred's Cinema's screens for the next two weeks and zip them up.\n" + "(Fred's Cinema must have been set up in DCP-o-matic's KDM window)\n\n" "\tdcpomatic_kdm -c \"Fred's Cinema\" -f now -d \"2 weeks\" -z my_great_movie\n\n"; } @@ -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 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 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"; }