diff options
Diffstat (limited to 'src/tools/dcpomatic_cli.cc')
| -rw-r--r-- | src/tools/dcpomatic_cli.cc | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/src/tools/dcpomatic_cli.cc b/src/tools/dcpomatic_cli.cc index 5a7ec3c72..8b55d6205 100644 --- a/src/tools/dcpomatic_cli.cc +++ b/src/tools/dcpomatic_cli.cc @@ -25,9 +25,12 @@ #include "lib/cross.h" #include "lib/dcpomatic_log.h" #include "lib/encode_server_finder.h" -#include "lib/ffmpeg_encoder.h" +#include "lib/ffmpeg_film_encoder.h" #include "lib/film.h" #include "lib/filter.h" +#ifdef DCPOMATIC_GROK +#include "lib/grok/context.h" +#endif #include "lib/hints.h" #include "lib/job_manager.h" #include "lib/json_server.h" @@ -37,6 +40,7 @@ #include "lib/signal_manager.h" #include "lib/transcode_job.h" #include "lib/util.h" +#include "lib/variant.h" #include "lib/version.h" #include "lib/video_content.h" #include <dcp/filesystem.h> @@ -63,7 +67,7 @@ static void help (string n) { cerr << "Syntax: " << n << " [OPTION] [<FILM>]\n" - << " -v, --version show DCP-o-matic version\n" + << variant::insert_dcpomatic(" -v, --version show %1 version\n") << " -h, --help show this help\n" << " -f, --flags show flags passed to C++ compiler on build\n" << " -n, --no-progress do not print progress to stdout\n" @@ -72,7 +76,7 @@ help (string n) << " -j, --json <port> run a JSON server on the specified port\n" << " -k, --keep-going keep running even when the job is complete\n" << " -s, --servers <file> specify servers to use in a text file\n" - << " -l, --list-servers just display a list of encoding servers that DCP-o-matic is configured to use; don't encode\n" + << variant::insert_dcpomatic(" -l, --list-servers just display a list of encoding servers that %1 is configured to use; don't encode\n") << " -d, --dcp-path echo DCP's path to stdout on successful completion (implies -n)\n" << " -c, --config <dir> directory containing config.xml and cinemas.xml\n" << " --dump just dump a summary of the film's settings; don't encode\n" @@ -90,7 +94,7 @@ print_dump (shared_ptr<Film> film) { cout << film->dcp_name (true) << "\n" << film->container()->container_nickname() << " at " << ((film->resolution() == Resolution::TWO_K) ? "2K" : "4K") << "\n" - << (film->j2k_bandwidth() / 1000000) << "Mbit/s" << "\n" + << (film->video_bit_rate(film->video_encoding()) / 1000000) << "Mbit/s" << "\n" << "Duration " << (film->length().timecode(film->video_frame_rate())) << "\n" << "Output " << film->video_frame_rate() << "fps " << (film->three_d() ? "3D" : "2D") << " " << (film->audio_frame_rate() / 1000) << "kHz\n" << (film->interop() ? "Inter-Op" : "SMPTE") << " " << (film->encrypted() ? "encrypted" : "unencrypted") << "\n"; @@ -417,7 +421,7 @@ main (int argc, char* argv[]) signal_manager = new SignalManager (); if (no_remote || export_format) { - EncodeServerFinder::instance()->stop (); + EncodeServerFinder::drop(); } if (json_port) { @@ -500,6 +504,11 @@ main (int argc, char* argv[]) } } +#ifdef DCPOMATIC_GROK + grk_plugin::setMessengerLogger(new grk_plugin::GrokLogger("[GROK] ")); + setup_grok_library_path(); +#endif + if (progress) { if (export_format) { cout << "\nExporting " << film->name() << "\n"; @@ -513,7 +522,7 @@ main (int argc, char* argv[]) if (export_format) { auto job = std::make_shared<TranscodeJob>(film, behaviour); job->set_encoder ( - std::make_shared<FFmpegEncoder> ( + std::make_shared<FFmpegFilmEncoder>( film, job, *export_filename, *export_format == "mp4" ? ExportFormat::H264_AAC : ExportFormat::PRORES_HQ, false, false, false, 23 ) ); |
