}
_film = film;
-
- FilmChanged ();
+ _video_position = DCPTime ();
+ _player_video.first.reset ();
+ _player_video.second = DCPTime ();
_frame.reset ();
_closed_captions_dialog->clear ();
map.set (dcp::RS, 1, 1 / sqrt(2)); // Rs -> Rt
}
- _butler.reset (new Butler(_player, _film->log(), map, _audio_channels, bind(&PlayerVideo::force, _1, AV_PIX_FMT_RGB24), false, true));
+ _butler.reset (new Butler(_player, map, _audio_channels, bind(&PlayerVideo::force, _1, AV_PIX_FMT_RGB24), false, true));
if (!Config::instance()->sound() && !_audio.isStreamOpen()) {
_butler->disable_audio ();
}
if (next >= _film->length()) {
stop ();
+ Finished ();
+ return;
}
_timer.Start (max ((next.seconds() - time().seconds()) * 1000, 1.0), wxTIMER_ONE_SHOT);