CCAP doc tweaks.
[dcpomatic.git] / src / lib / subtitle_decoder.cc
index eecfce19dde7f05a65fcee9200eab9f4536317cf..32cae6accc0e40318ad495944bcb3ce2aedd6beb 100644 (file)
@@ -61,6 +61,7 @@ void
 SubtitleDecoder::emit_image_start (ContentTime from, shared_ptr<Image> image, dcpomatic::Rect<double> rect)
 {
        ImageStart (ContentImageSubtitle (from, image, rect));
+       _position = from;
 }
 
 void
@@ -79,14 +80,18 @@ SubtitleDecoder::emit_text_start (ContentTime from, list<dcp::SubtitleString> s)
                if (content()->colour()) {
                        i.set_colour (*content()->colour());
                }
-               i.set_effect_colour (content()->effect_colour());
-               if (content()->outline()) {
-                       i.set_effect (dcp::BORDER);
-               } else if (content()->shadow()) {
-                       i.set_effect (dcp::SHADOW);
+               if (content()->effect_colour()) {
+                       i.set_effect_colour (*content()->effect_colour());
+               }
+               if (content()->effect()) {
+                       i.set_effect (*content()->effect());
+               }
+               if (content()->fade_in()) {
+                       i.set_fade_up_time (dcp::Time(content()->fade_in()->seconds(), 1000));
+               }
+               if (content()->fade_out()) {
+                       i.set_fade_down_time (dcp::Time(content()->fade_out()->seconds(), 1000));
                }
-               i.set_fade_up_time (dcp::Time(content()->fade_in().seconds(), 1000));
-               i.set_fade_down_time (dcp::Time(content()->fade_out().seconds(), 1000));
        }
 
        TextStart (ContentTextSubtitle (from, s));