- boost::optional<ContentTime> _pending_subtitle_from;
- boost::shared_ptr<Image> _pending_subtitle_image;
- boost::optional<dcpomatic::Rect<double> > _pending_subtitle_rect;
+ FlushResult flush_codecs();
+ FlushResult flush_fill();
+
+ VideoFilterGraphSet _filter_graphs;
+
+ dcpomatic::ContentTime _pts_offset;
+ boost::optional<dcpomatic::ContentTime> _current_subtitle_to;
+ /** true if we have a subtitle which has not had emit_stop called for it yet */
+ bool _have_current_subtitle = false;
+
+ std::shared_ptr<Image> _black_image;
+
+ std::map<std::shared_ptr<FFmpegAudioStream>, boost::optional<dcpomatic::ContentTime>> _next_time;