diff options
| author | Carl Hetherington <cth@carlh.net> | 2014-05-22 14:34:27 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2014-05-22 14:34:27 +0100 |
| commit | 85d343a420c4df1a08663c8afd3bdb73c8dfa985 (patch) | |
| tree | ce32da7c35fb8e462a922627145055d94d3a3500 /src/lib/ffmpeg_content.h | |
| parent | a23133da6ed512ee179e60f6787ba34ccbdb5e7d (diff) | |
Move FFmpegStream classes into their own source files.
Diffstat (limited to 'src/lib/ffmpeg_content.h')
| -rw-r--r-- | src/lib/ffmpeg_content.h | 83 |
1 files changed, 2 insertions, 81 deletions
diff --git a/src/lib/ffmpeg_content.h b/src/lib/ffmpeg_content.h index c546d69eb..6f4980dc7 100644 --- a/src/lib/ffmpeg_content.h +++ b/src/lib/ffmpeg_content.h @@ -31,89 +31,10 @@ struct AVFormatContext; struct AVStream; class Filter; +class FFmpegSubtitleStream; +class FFmpegAudioStream; class ffmpeg_pts_offset_test; -class FFmpegStream -{ -public: - FFmpegStream (std::string n, int i) - : name (n) - , _id (i) - {} - - FFmpegStream (cxml::ConstNodePtr); - - void as_xml (xmlpp::Node *) const; - - /** @param c An AVFormatContext. - * @param index A stream index within the AVFormatContext. - * @return true if this FFmpegStream uses the given stream index. - */ - bool uses_index (AVFormatContext const * c, int index) const; - AVStream* stream (AVFormatContext const * c) const; - - std::string technical_summary () const { - return "id " + boost::lexical_cast<std::string> (_id); - } - - std::string identifier () const { - return boost::lexical_cast<std::string> (_id); - } - - std::string name; - - friend bool operator== (FFmpegStream const & a, FFmpegStream const & b); - friend bool operator!= (FFmpegStream const & a, FFmpegStream const & b); - -private: - int _id; -}; - -class FFmpegAudioStream : public FFmpegStream -{ -public: - FFmpegAudioStream (std::string n, int i, int f, int c) - : FFmpegStream (n, i) - , frame_rate (f) - , channels (c) - , mapping (c) - { - mapping.make_default (); - } - - FFmpegAudioStream (cxml::ConstNodePtr, int); - - void as_xml (xmlpp::Node *) const; - - int frame_rate; - int channels; - AudioMapping mapping; - boost::optional<ContentTime> first_audio; - -private: - friend class ffmpeg_pts_offset_test; - - /* Constructor for tests */ - FFmpegAudioStream () - : FFmpegStream ("", 0) - , frame_rate (0) - , channels (0) - , mapping (1) - {} -}; - -class FFmpegSubtitleStream : public FFmpegStream -{ -public: - FFmpegSubtitleStream (std::string n, int i) - : FFmpegStream (n, i) - {} - - FFmpegSubtitleStream (cxml::ConstNodePtr); - - void as_xml (xmlpp::Node *) const; -}; - class FFmpegContentProperty : public VideoContentProperty { public: |
