summaryrefslogtreecommitdiff
path: root/src/lib/matcher.h
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2013-05-07 23:03:06 +0100
committerCarl Hetherington <cth@carlh.net>2013-05-07 23:03:06 +0100
commitb66a082df05202f0119b16853f04034cf85ec80b (patch)
tree2d4b5b75ed2aa5e3a1076e15e87264add5858d58 /src/lib/matcher.h
parent1f4a21c0da3a917a5ff7743a577cc0f210fa86d8 (diff)
Another attempt to fix matching and confusions about the delay line.
Diffstat (limited to 'src/lib/matcher.h')
-rw-r--r--src/lib/matcher.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/lib/matcher.h b/src/lib/matcher.h
index 41aa373a4..d6778da11 100644
--- a/src/lib/matcher.h
+++ b/src/lib/matcher.h
@@ -30,7 +30,7 @@ public:
void process_end ();
private:
- void fix_start (double);
+ void fix_start ();
void match (double);
void repeat_last_video ();
@@ -42,6 +42,20 @@ private:
boost::optional<libdcp::Size> _size;
boost::optional<int> _channels;
+ struct VideoRecord {
+ VideoRecord (boost::shared_ptr<const Image> i, bool s, boost::shared_ptr<Subtitle> u, double t)
+ : image (i)
+ , same (s)
+ , subtitle (u)
+ , time (t)
+ {}
+
+ boost::shared_ptr<const Image> image;
+ bool same;
+ boost::shared_ptr<Subtitle> subtitle;
+ double time;
+ };
+
struct AudioRecord {
AudioRecord (boost::shared_ptr<const AudioBuffers> a, double t)
: audio (a)
@@ -52,6 +66,7 @@ private:
double time;
};
+ std::list<VideoRecord> _pending_video;
std::list<AudioRecord> _pending_audio;
boost::optional<double> _first_input;