Note that newer libsub version is required.
[dcpomatic.git] / src / lib / text_decoder.h
index 9b3050f718b56ad8f4fd65e1397d01a3fe2ee850..1a7632fd82b8448366dddc0676531c8b04fd9a27 100644 (file)
 #define DCPOMATIC_CAPTION_DECODER_H
 
 
+#include "content_text.h"
 #include "decoder.h"
+#include "decoder_part.h"
 #include "rect.h"
-#include "types.h"
 #include "content_text.h"
-#include "decoder_part.h"
+#include "types.h"
+#include <dcp/subtitle_standard.h>
 #include <dcp/subtitle_string.h>
 #include <boost/signals2.hpp>
 
@@ -50,9 +52,9 @@ public:
 
        void emit_bitmap_start (ContentBitmapText const& bitmap);
        void emit_bitmap (dcpomatic::ContentTimePeriod period, std::shared_ptr<const Image> image, dcpomatic::Rect<double> rect);
-       void emit_plain_start (dcpomatic::ContentTime from, std::vector<dcp::SubtitleString> s, dcp::Standard valign_standard);
+       void emit_plain_start(dcpomatic::ContentTime from, std::vector<dcp::SubtitleString> s, dcp::SubtitleStandard valign_standard);
        void emit_plain_start (dcpomatic::ContentTime from, sub::Subtitle const & subtitle);
-       void emit_plain (dcpomatic::ContentTimePeriod period, std::vector<dcp::SubtitleString> s, dcp::Standard valign_standard);
+       void emit_plain(dcpomatic::ContentTimePeriod period, std::vector<dcp::SubtitleString> s, dcp::SubtitleStandard valign_standard);
        void emit_plain (dcpomatic::ContentTimePeriod period, sub::Subtitle const & subtitle);
        void emit_stop (dcpomatic::ContentTime to);
 
@@ -64,6 +66,8 @@ public:
                return _content;
        }
 
+       static std::string remove_invalid_characters_for_xml(std::string text);
+
        boost::signals2::signal<void (ContentBitmapText)> BitmapStart;
        boost::signals2::signal<void (ContentStringText)> PlainStart;
        boost::signals2::signal<void (dcpomatic::ContentTime)> Stop;