Hopefully much cleaner handling of PTS changes under resample.
[dcpomatic.git] / src / lib / player.h
index 5b1b6936bc95a41ca548fef98f32cc146da9a628..cd480dd1a78c659a6a16479e6d95759d4d0858a3 100644 (file)
@@ -35,6 +35,7 @@ class Playlist;
 class AudioContent;
 class Piece;
 class Image;
+class Resampler;
 
 /** @class Player
  *  @brief A class which can `play' a Playlist; emitting its audio and video.
@@ -89,6 +90,7 @@ private:
        void flush ();
        void emit_black ();
        void emit_silence (OutputAudioFrame);
+       boost::shared_ptr<Resampler> resampler (boost::shared_ptr<AudioContent>, bool);
        void film_changed (Film::Property);
        void update_subtitle ();
 
@@ -111,6 +113,7 @@ private:
 
        libdcp::Size _video_container_size;
        boost::shared_ptr<Image> _black_frame;
+       std::map<boost::shared_ptr<AudioContent>, boost::shared_ptr<Resampler> > _resamplers;
 
        struct {
                boost::weak_ptr<Piece> piece;