#include "rect.h"
#include "digester.h"
#include "audio_processor.h"
-#include "safe_stringstream.h"
#include "compose.hpp"
+#include <locked_sstream.h>
#include <dcp/util.h>
#include <dcp/picture_asset.h>
#include <dcp/sound_asset.h>
int h = m / 60;
m -= (h * 60);
- SafeStringStream hms;
+ locked_stringstream hms;
hms << h << N_(":");
hms.width (2);
hms << setfill ('0') << m << N_(":");
int h = m / 60;
m -= (h * 60);
- SafeStringStream ap;
+ locked_stringstream ap;
bool const hours = h > 0;
bool const minutes = h < 6 && m > 0;
}
string
-video_asset_filename (shared_ptr<dcp::PictureAsset> asset)
+video_asset_filename (shared_ptr<dcp::PictureAsset> asset, int reel_index, int reel_count, optional<string> summary)
{
- return "j2c_" + asset->id() + ".mxf";
+ dcp::NameFormat::Map values;
+ values['t'] = "j2c";
+ values['i'] = asset->id();
+ values['r'] = raw_convert<string> (reel_index + 1);
+ values['n'] = raw_convert<string> (reel_count);
+ if (summary) {
+ values['c'] = summary.get();
+ }
+ return Config::instance()->dcp_filename_format().get(values) + ".mxf";
}
string
-audio_asset_filename (shared_ptr<dcp::SoundAsset> asset)
+audio_asset_filename (shared_ptr<dcp::SoundAsset> asset, int reel_index, int reel_count, optional<string> summary)
{
- return "pcm_" + asset->id() + ".mxf";
+ dcp::NameFormat::Map values;
+ values['t'] = "pcm";
+ values['i'] = asset->id();
+ values['r'] = raw_convert<string> (reel_index + 1);
+ values['n'] = raw_convert<string> (reel_count);
+ if (summary) {
+ values['c'] = summary.get();
+ }
+ return Config::instance()->dcp_filename_format().get(values) + ".mxf";
}
float