return;
}
- int32_t const this_time = min (
- audio->frames() - offset,
- (int32_t) (_audio_reel->period().duration().frames_floor(_film->audio_frame_rate()) - _audio_reel->total_written_audio_frames())
- );
+ int32_t const remaining = audio->frames() - offset;
+ int32_t const reel_space = _audio_reel->period().duration().frames_floor(_film->audio_frame_rate()) - _audio_reel->total_written_audio_frames();
- if (this_time == audio->frames()) {
+ if (remaining <= reel_space) {
/* Easy case: we can write all the audio to this reel */
_audio_reel->write (audio);
+ offset += remaining;
} else {
/* Write the part we can */
- shared_ptr<AudioBuffers> part (new AudioBuffers (audio->channels(), this_time));
- part->copy_from (audio.get(), this_time, offset, 0);
+ shared_ptr<AudioBuffers> part (new AudioBuffers (audio->channels(), reel_space));
+ part->copy_from (audio.get(), reel_space, offset, 0);
_audio_reel->write (part);
++_audio_reel;
+ offset += reel_space;
}
-
- offset += this_time;
}
}
string text = Config::instance()->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, "$CONTAINER", _film->container()->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::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 (boost::filesystem::is_regular_file (i->path ())) {
+ size += boost::filesystem::file_size (i->path ());
+ }
}
if (size > (1000000000L)) {