summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2017-06-08 15:22:31 +0100
committerCarl Hetherington <cth@carlh.net>2017-06-08 15:22:31 +0100
commitf679e8ab99d25bcf725732e0c79b658f38a39a27 (patch)
tree53e6c1ecec26cc3f3c6d81bfd5050676bbd602e0 /src/lib
parent9fd783bbad870c018dfde5c53de3013b537082a3 (diff)
Add size and audio/subtitle languages to contact sheet.
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/config.cc3
-rw-r--r--src/lib/writer.cc17
2 files changed, 20 insertions, 0 deletions
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 <dcp/cpl.h>
+#include <dcp/locale_convert.h>
#include <boost/foreach.hpp>
#include <fstream>
#include <cerrno>
@@ -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<string> (size / 1000000000.0, 1, true)));
+ } else {
+ boost::algorithm::replace_all (text, "$SIZE", String::compose ("%1MB", dcp::locale_convert<string> (size / 1000000.0, 1, true)));
+ }
pair<int, int> ch = audio_channel_types (_film->mapped_audio_channels(), _film->audio_channels());
string description = String::compose("%1.%2", ch.first, ch.second);