summaryrefslogtreecommitdiff
path: root/src/lib/shuffler.h
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2018-02-20 23:34:59 +0000
committerCarl Hetherington <cth@carlh.net>2018-02-20 23:37:24 +0000
commita0eff2446835a2a29d751a4810fe182c486a2eb6 (patch)
tree3a6b9e6c6724d2356c97c2cf14810ef79c85af53 /src/lib/shuffler.h
parentd920b12b4d05fa1b0e95e1178ee21c671e0ae431 (diff)
Add a 2-frame `delay' on content arriving at the player to give
subtitle content the chance to catch up. Fixes problems observed when overlaying a DCP subtitle onto an existing DCP and then seeking into the first subtitle. After the seek the decoder positions were: DCP: 0. subtitle: first subtitle time. This causes the DCP decoder to be pass()ed first and so the subtitle for the video frame has not arrived yet. I hope this does not cause unpredicted side effects...
Diffstat (limited to 'src/lib/shuffler.h')
-rw-r--r--src/lib/shuffler.h9
1 files changed, 2 insertions, 7 deletions
diff --git a/src/lib/shuffler.h b/src/lib/shuffler.h
index 54e13d486..2c1d0677f 100644
--- a/src/lib/shuffler.h
+++ b/src/lib/shuffler.h
@@ -20,23 +20,18 @@
#include "types.h"
#include "content_video.h"
+#include "video_adjuster.h"
#include <boost/signals2.hpp>
class Piece;
-class Shuffler
+class Shuffler : public VideoAdjuster
{
public:
void clear ();
- void flush ();
void video (boost::weak_ptr<Piece>, ContentVideo video);
- boost::signals2::signal<void (boost::weak_ptr<Piece>, ContentVideo)> Video;
-
- typedef std::pair<boost::weak_ptr<Piece>, ContentVideo> Store;
private:
-
boost::optional<ContentVideo> _last;
- std::list<Store> _store;
};