diff options
Diffstat (limited to 'src/wx/gl_video_view.cc')
| -rw-r--r-- | src/wx/gl_video_view.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/wx/gl_video_view.cc b/src/wx/gl_video_view.cc index 55c6cc969..93a53b411 100644 --- a/src/wx/gl_video_view.cc +++ b/src/wx/gl_video_view.cc @@ -140,7 +140,7 @@ GLVideoView::update () } void -GLVideoView::draw () +GLVideoView::draw (Position<int> inter_position) { glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); check_gl_error ("glClear"); @@ -232,7 +232,6 @@ GLVideoView::draw () if (_viewer->outline_content()) { glColor3ub (255, 0, 0); glBegin (GL_LINE_LOOP); - Position<int> inter_position = _viewer->inter_position (); dcp::Size inter_size = _viewer->inter_size (); glVertex2f (inter_position.x, inter_position.y + (canvas_size.GetHeight() - out_size.height) / 2); glVertex2f (inter_position.x + inter_size.width, inter_position.y + (canvas_size.GetHeight() - out_size.height) / 2); @@ -305,6 +304,7 @@ try _one_shot = false; lm.unlock (); + Position<int> inter_position; if (length() != dcpomatic::DCPTime()) { dcpomatic::DCPTime const next = position() + one_video_frame(); @@ -316,8 +316,9 @@ try get_next_frame (false); set_image (player_video().first->image(bind(&PlayerVideo::force, _1, AV_PIX_FMT_RGB24), false, true)); + inter_position = player_video().first->inter_position(); } - draw (); + draw (inter_position); while (time_until_next_frame() < 5) { get_next_frame (true); |
