X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fplayer.cc;h=9e14b65b301aa1c2c20f77950a9a893c65a1f5cb;hb=bde76c3341775bd02da59932d285e14eade64ae0;hp=c855471b4187a72e4545397453c92a7be6d8dfe7;hpb=c7b68d663ac3db10dcf2bfcc11009dce46f820dc;p=dcpomatic.git diff --git a/src/lib/player.cc b/src/lib/player.cc index c855471b4..9e14b65b3 100644 --- a/src/lib/player.cc +++ b/src/lib/player.cc @@ -45,6 +45,8 @@ #include "frame_rate_change.h" #include "dcp_content.h" #include "dcp_decoder.h" +#include "dcp_subtitle_content.h" +#include "dcp_subtitle_decoder.h" #define LOG_GENERAL(...) _film->log()->log (String::compose (__VA_ARGS__), Log::TYPE_GENERAL); @@ -160,6 +162,13 @@ Player::setup_pieces () frc = best_overlap_frc; } + /* DCPSubtitleContent */ + shared_ptr dsc = dynamic_pointer_cast (*i); + if (dsc) { + decoder.reset (new DCPSubtitleDecoder (dsc)); + frc = best_overlap_frc; + } + _pieces.push_back (shared_ptr (new Piece (*i, decoder, frc.get ()))); }