#define DCPOMATIC_AUDIO_DECODER_H
#include "decoder.h"
-#include "content.h"
-#include "audio_content.h"
#include "content_audio.h"
+#include "audio_stream.h"
#include <boost/enable_shared_from_this.hpp>
class AudioBuffers;
+class AudioContent;
class AudioDecoderStream;
/** @class AudioDecoder.
class AudioDecoder : public virtual Decoder, public boost::enable_shared_from_this<AudioDecoder>
{
public:
- AudioDecoder (boost::shared_ptr<const AudioContent>);
+ AudioDecoder (boost::shared_ptr<const AudioContent>, bool fast);
boost::shared_ptr<const AudioContent> audio_content () const {
return _audio_content;
*/
ContentAudio get_audio (AudioStreamPtr stream, Frame time, Frame length, bool accurate);
+ void set_ignore_audio ();
+
+ bool fast () const {
+ return _fast;
+ }
+
protected:
void audio (AudioStreamPtr stream, boost::shared_ptr<const AudioBuffers>, ContentTime);
void flush ();
boost::shared_ptr<const AudioContent> _audio_content;
/** An AudioDecoderStream object to manage each stream in _audio_content */
std::map<AudioStreamPtr, boost::shared_ptr<AudioDecoderStream> > _streams;
+ bool _ignore_audio;
+ bool _fast;
};
#endif