- std::vector<FFmpegSubtitleStream> subtitle_streams () const {
- boost::mutex::scoped_lock lm (_mutex);
- return _subtitle_streams;
- }
-
- boost::optional<FFmpegSubtitleStream> subtitle_stream () const {
- boost::mutex::scoped_lock lm (_mutex);
- return _subtitle_stream;
- }
-
- std::vector<FFmpegAudioStream> audio_streams () const {
- boost::mutex::scoped_lock lm (_mutex);
- return _audio_streams;
- }
-
- boost::optional<FFmpegAudioStream> audio_stream () const {
- boost::mutex::scoped_lock lm (_mutex);
- return _audio_stream;
- }
-
- void set_subtitle_stream (FFmpegSubtitleStream);
- void set_audio_stream (FFmpegAudioStream);
+ /* AudioContent */
+ int audio_channels () const;
+ AudioContent::Frame audio_length () const;
+ int content_audio_frame_rate () const;
+ int output_audio_frame_rate () const;
+ AudioMapping audio_mapping () const;
+ void set_audio_mapping (AudioMapping);
+
+ void set_filters (std::vector<Filter const *> const &);
+
+ std::vector<boost::shared_ptr<FFmpegSubtitleStream> > subtitle_streams () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _subtitle_streams;
+ }
+
+ boost::shared_ptr<FFmpegSubtitleStream> subtitle_stream () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _subtitle_stream;
+ }
+
+ std::vector<boost::shared_ptr<FFmpegAudioStream> > audio_streams () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _audio_streams;
+ }