diff options
Diffstat (limited to 'src/lib/player.h')
| -rw-r--r-- | src/lib/player.h | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/src/lib/player.h b/src/lib/player.h index 903d011d0..bbdb14ec2 100644 --- a/src/lib/player.h +++ b/src/lib/player.h @@ -51,9 +51,8 @@ public: void seek (Time); void seek_back (); - /** @return position that we are at; ie the time of the next thing we will emit on pass() */ - Time position () const { - return _position; + Time video_position () const { + return _video_position; } void set_video_container_size (libdcp::Size); @@ -76,9 +75,9 @@ private: void playlist_changed (); void content_changed (boost::weak_ptr<Content>, int); void do_seek (Time, bool); - void add_black_piece (Time, Time); - void add_silent_piece (Time, Time); void flush (); + void emit_black (); + void emit_silence (OutputAudioFrame); boost::shared_ptr<Resampler> resampler (boost::shared_ptr<AudioContent>); boost::shared_ptr<const Film> _film; @@ -90,10 +89,16 @@ private: /** Our pieces are ready to go; if this is false the pieces must be (re-)created before they are used */ bool _have_valid_pieces; std::list<boost::shared_ptr<Piece> > _pieces; - Time _position; + + /** The time after the last video that we emitted */ + Time _video_position; + /** The time after the last audio that we emitted */ + Time _audio_position; + AudioBuffers _audio_buffers; - Time _next_audio; - boost::optional<libdcp::Size> _video_container_size; + + libdcp::Size _video_container_size; + boost::shared_ptr<Image> _black_frame; std::map<boost::shared_ptr<AudioContent>, boost::shared_ptr<Resampler> > _resamplers; }; |
