/*
- Copyright (C) 2019-2021 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2019-2022 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
" -s, --still-length <n> number of seconds that still content should last\n"
" --standard <standard> SMPTE or interop (default SMPTE)\n"
" --no-use-isdcf-name do not use an ISDCF name; use the specified name unmodified\n"
- " --no-sign do not sign the DCP\n"
" --config <dir> directory containing config.xml and cinemas.xml\n"
- " --fourk make a 4K DCP rather than a 2K one\n"
+ " --twok make a 2K DCP instead of choosing a resolution based on the content\n"
+ " --fourk make a 4K DCP instead of choosing a resolution based on the content\n"
" -o, --output <dir> output directory\n"
" --threed make a 3D DCP\n"
" --j2k-bandwidth <Mbit/s> J2K bandwidth in Mbit/s\n"
" --left-eye next piece of content is for the left eye\n"
" --right-eye next piece of content is for the right eye\n"
" --channel <channel> next piece of content should be mapped to audio channel L, R, C, Lfe, Ls or Rs\n"
- " --gain next piece of content should have the given audio gain (in dB)\n";
+ " --gain next piece of content should have the given audio gain (in dB)\n"
+ " --kdm <file> KDM for next piece of content\n";
template <class T>
, still_length (10)
, standard (dcp::Standard::SMPTE)
, no_use_isdcf_name (false)
+ , twok (false)
, fourk (false)
{
string dcp_content_type_string = "TST";
auto next_frame_type = VideoFrameType::TWO_D;
optional<dcp::Channel> channel;
optional<float> gain;
+ optional<boost::filesystem::path> kdm;
int i = 1;
while (i < argc) {
} else if (a == "--right-eye") {
next_frame_type = VideoFrameType::THREE_D_RIGHT;
claimed = true;
+ } else if (a == "--twok") {
+ twok = true;
+ claimed = true;
} else if (a == "--fourk") {
fourk = true;
claimed = true;
argument_option(i, argc, argv, "", "--channel", &claimed, &error, &channel, convert_channel);
argument_option(i, argc, argv, "", "--gain", &claimed, &error, &gain);
+ argument_option(i, argc, argv, "", "--kdm", &claimed, &error, &kdm, string_to_path);
if (!claimed) {
if (a.length() > 2 && a.substr(0, 2) == "--") {
c.frame_type = next_frame_type;
c.channel = channel;
c.gain = gain;
+ c.kdm = kdm;
content.push_back (c);
next_frame_type = VideoFrameType::TWO_D;
channel = {};