X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Ftext_decoder.cc;h=4eaaf37af7cbd50b86ad2fdce8bfbc17253c88c3;hb=cf693669efd43c0ac565c61a074a1c7f0290921e;hp=2423fc73864fd1bcdde8af7f49648814ce18ed09;hpb=0ab83642f0c96ae2681beae04873b3226338a570;p=dcpomatic.git diff --git a/src/lib/text_decoder.cc b/src/lib/text_decoder.cc index 2423fc738..4eaaf37af 100644 --- a/src/lib/text_decoder.cc +++ b/src/lib/text_decoder.cc @@ -36,14 +36,14 @@ using std::min; using boost::shared_ptr; using boost::optional; using boost::function; +using namespace dcpomatic; TextDecoder::TextDecoder ( Decoder* parent, shared_ptr c, - shared_ptr log, ContentTime first ) - : DecoderPart (parent, log) + : DecoderPart (parent) , _content (c) , _position (first) { @@ -60,7 +60,7 @@ TextDecoder::TextDecoder ( void TextDecoder::emit_bitmap_start (ContentTime from, shared_ptr image, dcpomatic::Rect rect) { - BitmapStart (ContentBitmapText (from, _content->type(), image, rect)); + BitmapStart (ContentBitmapText (from, image, rect)); _position = from; } @@ -94,7 +94,7 @@ TextDecoder::emit_plain_start (ContentTime from, list s) } } - PlainStart (ContentPlainText (from, _content->type(), s)); + PlainStart (ContentStringText (from, s)); _position = from; } @@ -233,7 +233,7 @@ TextDecoder::emit_plain_start (ContentTime from, sub::Subtitle const & subtitle) void TextDecoder::emit_stop (ContentTime to) { - Stop (to, _content->type()); + Stop (to); } void @@ -250,6 +250,17 @@ TextDecoder::emit_plain (ContentTimePeriod period, sub::Subtitle const & s) emit_stop (period.to); } +/* @param rect Area expressed as a fraction of the video frame that this subtitle + * is for (e.g. a width of 0.5 means the width of the subtitle is half the width + * of the video frame) + */ +void +TextDecoder::emit_bitmap (ContentTimePeriod period, shared_ptr image, dcpomatic::Rect rect) +{ + emit_bitmap_start (period.from, image, rect); + emit_stop (period.to); +} + void TextDecoder::seek () {