, SubtitleContent (f, c)
{
shared_ptr<FFmpegContent> ref = dynamic_pointer_cast<FFmpegContent> (c[0]);
- assert (ref);
+ DCPOMATIC_ASSERT (ref);
for (size_t i = 0; i < c.size(); ++i) {
shared_ptr<FFmpegContent> fc = dynamic_pointer_cast<FFmpegContent> (c[i]);
}
void
-FFmpegContent::examine (shared_ptr<Job> job)
+FFmpegContent::examine (shared_ptr<Job> job, bool calculate_digest)
{
job->set_progress_unknown ();
- Content::examine (job);
+ Content::examine (job, calculate_digest);
- shared_ptr<FFmpegExaminer> examiner (new FFmpegExaminer (shared_from_this ()));
+ shared_ptr<FFmpegExaminer> examiner (new FFmpegExaminer (shared_from_this (), job));
take_from_video_examiner (examiner);
shared_ptr<const Film> film = _film.lock ();
- assert (film);
+ DCPOMATIC_ASSERT (film);
{
boost::mutex::scoped_lock lm (_mutex);
);
}
-string
-FFmpegContent::information () const
-{
- if (video_length() == ContentTime (0) || video_frame_rate() == 0) {
- return "";
- }
-
- SafeStringStream s;
-
- s << String::compose (_("%1 frames; %2 frames per second"), video_length_after_3d_combine().frames (video_frame_rate()), video_frame_rate()) << "\n";
- s << VideoContent::information ();
-
- return s.str ();
-}
-
void
FFmpegContent::set_subtitle_stream (shared_ptr<FFmpegSubtitleStream> s)
{
FFmpegContent::full_length () const
{
shared_ptr<const Film> film = _film.lock ();
- assert (film);
+ DCPOMATIC_ASSERT (film);
return DCPTime (video_length_after_3d_combine(), FrameRateChange (video_frame_rate (), film->video_frame_rate ()));
}
*/
boost::filesystem::path p = film->audio_analysis_dir ();
- string name = digest ();
+ string name = digest().get_value_or ("X");
if (audio_stream ()) {
name += "_" + audio_stream()->identifier ();
}