Fix horizontal positioning with .srt / burn-in (#488).
[dcpomatic.git] / src / lib / subrip_decoder.cc
index 694b2215725b2a17070256f2f28a3d3b404f905f..5c6d331dfe66bb3802010657de4ed0be2bd94b71 100644 (file)
@@ -48,7 +48,7 @@ SubRipDecoder::seek (ContentTime time, bool accurate)
 }
 
 bool
-SubRipDecoder::pass ()
+SubRipDecoder::pass (PassReason)
 {
        if (_next >= _subtitles.size ()) {
                return true;
@@ -65,10 +65,13 @@ SubRipDecoder::pass ()
                                        j->italic,
                                        dcp::Colour (255, 255, 255),
                                        j->font_size.points (72 * 11),
-                                       dcp::Time (rint (_subtitles[_next].from.all_as_seconds())),
-                                       dcp::Time (rint (_subtitles[_next].to.all_as_seconds())),
+                                       1.0,
+                                       dcp::Time (_subtitles[_next].from.all_as_seconds()),
+                                       dcp::Time (_subtitles[_next].to.all_as_seconds()),
+                                       0,
+                                       dcp::HALIGN_CENTER,
                                        i->vertical_position.line.get() * (1.5 / 22) + 0.8,
-                                       dcp::TOP,
+                                       dcp::VALIGN_TOP,
                                        j->text,
                                        dcp::NONE,
                                        dcp::Colour (255, 255, 255),
@@ -85,7 +88,13 @@ SubRipDecoder::pass ()
 }
 
 list<ContentTimePeriod>
-SubRipDecoder::subtitles_during (ContentTimePeriod p, bool starting) const
+SubRipDecoder::image_subtitles_during (ContentTimePeriod, bool) const
+{
+       return list<ContentTimePeriod> ();
+}
+
+list<ContentTimePeriod>
+SubRipDecoder::text_subtitles_during (ContentTimePeriod p, bool starting) const
 {
        /* XXX: inefficient */