, _fast (false)
, _tolerant (film->tolerant())
, _play_referenced (false)
+ , _always_trim (false)
, _audio_merger (_film->audio_frame_rate())
, _shuffler (0)
{
, _fast (false)
, _tolerant (film->tolerant())
, _play_referenced (false)
+ , _always_trim (false)
, _audio_merger (_film->audio_frame_rate())
, _shuffler (0)
{
setup_pieces_unlocked ();
}
+
+void
+Player::set_always_trim ()
+{
+ boost::mutex::scoped_lock lm (_mutex);
+ _always_trim = true;
+ setup_pieces_unlocked ();
+}
+
+
static void
maybe_add_asset (list<ReferencedReelAsset>& a, shared_ptr<dcp::ReelAsset> r, Frame reel_trim_start, Frame reel_trim_end, DCPTime from, int const ffr)
{
void set_always_burn_open_subtitles ();
void set_fast ();
void set_play_referenced ();
+ void set_always_trim ();
void set_dcp_decode_reduction (boost::optional<int> reduction);
boost::optional<dcpomatic::DCPTime> content_time_to_dcp (boost::shared_ptr<Content> content, dcpomatic::ContentTime t);
bool _tolerant;
/** true if we should `play' (i.e output) referenced DCP data (e.g. for preview) */
bool _play_referenced;
+ /** true if we should always trim content, even if it is set to TRIM_PLAYLIST (e.g. for preview) */
+ bool _always_trim;
/** Time just after the last video frame we emitted, or the time of the last accurate seek */
boost::optional<dcpomatic::DCPTime> _last_video_time;
_player->set_always_burn_open_subtitles ();
_player->set_play_referenced ();
+ _player->set_always_trim ();
_film->Change.connect (boost::bind (&FilmViewer::film_change, this, _1, _2));
_film->ContentChange.connect (boost::bind(&FilmViewer::content_change, this, _1, _3));