From fd49966b7fb987f074c703441d5bb1f2d2a75fcf Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sun, 25 Apr 2021 16:49:14 +0200 Subject: Add and use Piece::has_text(). --- src/lib/piece.cc | 8 ++++++++ src/lib/piece.h | 1 + src/lib/player.cc | 2 +- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/lib/piece.cc b/src/lib/piece.cc index 6dddc798c..2a3adcd40 100644 --- a/src/lib/piece.cc +++ b/src/lib/piece.cc @@ -216,3 +216,11 @@ Piece::reference_dcp_audio () const auto dcp = dynamic_pointer_cast(_content); return dcp && dcp->reference_audio(); } + + +bool +Piece::has_text () const +{ + return !decoder->text.empty(); +} + diff --git a/src/lib/piece.h b/src/lib/piece.h index 527f65c62..6c0df23c2 100644 --- a/src/lib/piece.h +++ b/src/lib/piece.h @@ -71,6 +71,7 @@ public: std::shared_ptr decoder_for (std::shared_ptr content) const; dcpomatic::DCPTime decoder_position () const; + bool has_text () const; std::shared_ptr decoder; boost::optional ignore_video; diff --git a/src/lib/player.cc b/src/lib/player.cc index e99eb9dae..23db8433f 100644 --- a/src/lib/player.cc +++ b/src/lib/player.cc @@ -610,7 +610,7 @@ Player::pass () /* Given two choices at the same time, pick the one with texts so we see it before the video. */ - if (!earliest_time || t < *earliest_time || (t == *earliest_time && !i->decoder->text.empty())) { + if (!earliest_time || t < *earliest_time || (t == *earliest_time && i->has_text())) { earliest_time = t; earliest_content = i; } -- cgit v1.2.3