From edcae629e58bd5b5309d607778917fd8aaa20e0c Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sun, 22 Dec 2013 14:24:34 +0000 Subject: Fix play of 3D. --- src/lib/player.cc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/lib') diff --git a/src/lib/player.cc b/src/lib/player.cc index 9757040d4..4cf66065b 100644 --- a/src/lib/player.cc +++ b/src/lib/player.cc @@ -160,6 +160,7 @@ Player::pass () } } else { + if ( dv->dcp_time >= _video_position && !earliest_piece->content->trimmed (dv->dcp_time - earliest_piece->content->position ()) @@ -245,7 +246,11 @@ Player::emit_video (weak_ptr weak_piece, shared_ptr video) Video (pi, video->eyes, content->colour_conversion(), video->same, video->dcp_time); _last_emit_was_black = false; - _video_position = rint (video->dcp_time + TIME_HZ / _film->video_frame_rate()); + + /* This is a bit of a hack; don't update _video_position if EYES_RIGHT is on its way */ + if (video->eyes != EYES_LEFT) { + _video_position = rint (video->dcp_time + TIME_HZ / _film->video_frame_rate()); + } } void -- cgit v1.2.3