Add appearance dialog for SubRip subtitles.
[dcpomatic.git] / src / lib / util.cc
index 56f1b528643226f21b4ffd671baccbf3601221ac..77d66d07763f967cc436bb14883604f9dd4b2621 100644 (file)
 #include "md5_digester.h"
 #include "audio_processor.h"
 #include "safe_stringstream.h"
+#include "compose.hpp"
 #include <dcp/util.h>
 #include <dcp/picture_asset.h>
 #include <dcp/sound_asset.h>
 #include <dcp/subtitle_asset.h>
+extern "C" {
+#include <libavfilter/avfilter.h>
+#include <libavcodec/avcodec.h>
+}
 #include <curl/curl.h>
 #include <glib.h>
 #include <pangomm/init.h>
 #include <boost/algorithm/string.hpp>
-#include <boost/bind.hpp>
-#include <boost/lambda/lambda.hpp>
 #include <boost/thread.hpp>
 #include <boost/filesystem.hpp>
 #ifdef DCPOMATIC_WINDOWS
@@ -537,10 +540,10 @@ dcp::Size
 fit_ratio_within (float ratio, dcp::Size full_frame)
 {
        if (ratio < full_frame.ratio ()) {
-               return dcp::Size (rint (full_frame.height * ratio), full_frame.height);
+               return dcp::Size (lrintf (full_frame.height * ratio), full_frame.height);
        }
 
-       return dcp::Size (full_frame.width, rint (full_frame.width / ratio));
+       return dcp::Size (full_frame.width, lrintf (full_frame.width / ratio));
 }
 
 void *
@@ -553,22 +556,6 @@ wrapped_av_malloc (size_t s)
        return p;
 }
 
-FFmpegSubtitlePeriod
-subtitle_period (AVSubtitle const & sub)
-{
-       ContentTime const packet_time = ContentTime::from_seconds (static_cast<double> (sub.pts) / AV_TIME_BASE);
-
-       if (sub.end_display_time == static_cast<uint32_t> (-1)) {
-               /* End time is not known */
-               return FFmpegSubtitlePeriod (packet_time + ContentTime::from_seconds (sub.start_display_time / 1e3));
-       }
-
-       return FFmpegSubtitlePeriod (
-               packet_time + ContentTime::from_seconds (sub.start_display_time / 1e3),
-               packet_time + ContentTime::from_seconds (sub.end_display_time / 1e3)
-               );
-}
-
 map<string, string>
 split_get_request (string url)
 {