From f679e8ab99d25bcf725732e0c79b658f38a39a27 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Thu, 8 Jun 2017 15:22:31 +0100 Subject: [PATCH] Add size and audio/subtitle languages to contact sheet. --- ChangeLog | 2 ++ src/lib/config.cc | 3 +++ src/lib/writer.cc | 17 +++++++++++++++++ 3 files changed, 22 insertions(+) diff --git a/ChangeLog b/ChangeLog index 119c6e360..25bce37ca 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,7 @@ 2017-06-08 Carl Hetherington + * Add size and audio/subtitle languages to cover sheet (#1081). + * Updated de_DE translation from Carsten Kurz. 2017-06-05 Carl Hetherington diff --git a/src/lib/config.cc b/src/lib/config.cc index 7b2e29f15..8dd4c4e0b 100644 --- a/src/lib/config.cc +++ b/src/lib/config.cc @@ -634,7 +634,10 @@ Config::set_cover_sheet_to_default () "Type: $TYPE\n" "Format: $CONTAINER\n" "Audio: $AUDIO\n" + "Audio Language: $AUDIO_LANGUAGE\n" + "Subtitle Language: $SUBTITLE_LANGUAGE\n" "Length: $LENGTH\n" + "Size: $SIZE\n" ); } diff --git a/src/lib/writer.cc b/src/lib/writer.cc index ec4689b2f..ae00c0122 100644 --- a/src/lib/writer.cc +++ b/src/lib/writer.cc @@ -35,6 +35,7 @@ #include "util.h" #include "reel_writer.h" #include +#include #include #include #include @@ -556,6 +557,22 @@ Writer::write_cover_sheet () boost::algorithm::replace_all (text, "$CPL_NAME", _film->name()); boost::algorithm::replace_all (text, "$TYPE", _film->dcp_content_type()->pretty_name()); boost::algorithm::replace_all (text, "$CONTAINER", _film->container()->nickname()); + boost::algorithm::replace_all (text, "$AUDIO_LANGUAGE", _film->isdcf_metadata().audio_language); + boost::algorithm::replace_all (text, "$SUBTITLE_LANGUAGE", _film->isdcf_metadata().subtitle_language); + + boost::uintmax_t size = 0; + for ( + boost::filesystem::recursive_directory_iterator i = boost::filesystem::recursive_directory_iterator(_film->dir(_film->dcp_name())); + i != boost::filesystem::recursive_directory_iterator(); + ++i) { + size += boost::filesystem::file_size (i->path ()); + } + + if (size > (1000000000L)) { + boost::algorithm::replace_all (text, "$SIZE", String::compose ("%1GB", dcp::locale_convert (size / 1000000000.0, 1, true))); + } else { + boost::algorithm::replace_all (text, "$SIZE", String::compose ("%1MB", dcp::locale_convert (size / 1000000.0, 1, true))); + } pair ch = audio_channel_types (_film->mapped_audio_channels(), _film->audio_channels()); string description = String::compose("%1.%2", ch.first, ch.second); -- 2.30.2