diff options
| author | Carl Hetherington <cth@carlh.net> | 2016-02-15 08:40:14 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2016-02-15 22:34:57 +0000 |
| commit | 54d17e98a597334bf1ba2615e3eb6191088f606f (patch) | |
| tree | 83a4f0c1acb2aab41a9cf279bc949474a214951a /src/lib/ffmpeg_subtitle_stream.h | |
| parent | 57c49675889c0e0ad8cebece7a60bba08ba782d2 (diff) | |
Support SSA subtitles embedded within FFmpeg files.
Diffstat (limited to 'src/lib/ffmpeg_subtitle_stream.h')
| -rw-r--r-- | src/lib/ffmpeg_subtitle_stream.h | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/src/lib/ffmpeg_subtitle_stream.h b/src/lib/ffmpeg_subtitle_stream.h index 6cd5318d0..688aaa993 100644 --- a/src/lib/ffmpeg_subtitle_stream.h +++ b/src/lib/ffmpeg_subtitle_stream.h @@ -31,11 +31,27 @@ public: void as_xml (xmlpp::Node *) const; - void add_subtitle (std::string id, ContentTimePeriod period); - std::list<ContentTimePeriod> subtitles_during (ContentTimePeriod period, bool starting) const; + void add_image_subtitle (std::string id, ContentTimePeriod period); + void add_text_subtitle (std::string id, ContentTimePeriod period); + std::list<ContentTimePeriod> image_subtitles_during (ContentTimePeriod period, bool starting) const; + std::list<ContentTimePeriod> text_subtitles_during (ContentTimePeriod period, bool starting) const; ContentTime find_subtitle_to (std::string id) const; void add_offset (ContentTime offset); + bool has_image_subtitles () const { + return !_image_subtitles.empty (); + } + bool has_text_subtitles () const { + return !_text_subtitles.empty (); + } + private: - std::map<std::string, ContentTimePeriod> _subtitles; + + typedef std::map<std::string, ContentTimePeriod> PeriodMap; + + void as_xml (xmlpp::Node *, PeriodMap const & subs, std::string node) const; + std::list<ContentTimePeriod> subtitles_during (ContentTimePeriod period, bool starting, PeriodMap const & subs) const; + + PeriodMap _image_subtitles; + PeriodMap _text_subtitles; }; |
