summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2023-08-08 18:11:11 +0200
committerCarl Hetherington <cth@carlh.net>2023-08-09 10:18:46 +0200
commita3c1ae7c2e46b65347341896b3d1a505ff92632b (patch)
tree2b096eb0676f52c9989952e341f2bd98143ce125 /src/lib
parentaf5b9dfadf8989311cd5f78554349f0283912522 (diff)
Extract Film::Property to its own header to (maybe) increase compilation speed.
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/analyse_subtitles_job.cc1
-rw-r--r--src/lib/dcp_subtitle_decoder.cc1
-rw-r--r--src/lib/decoder.h1
-rw-r--r--src/lib/film.cc96
-rw-r--r--src/lib/film.h55
-rw-r--r--src/lib/film_property.h77
-rw-r--r--src/lib/image_decoder.h1
-rw-r--r--src/lib/player.cc12
-rw-r--r--src/lib/player.h6
-rw-r--r--src/lib/subtitle_encoder.cc1
-rw-r--r--src/lib/util.cc1
11 files changed, 145 insertions, 107 deletions
diff --git a/src/lib/analyse_subtitles_job.cc b/src/lib/analyse_subtitles_job.cc
index d8d258ea5..b41990db5 100644
--- a/src/lib/analyse_subtitles_job.cc
+++ b/src/lib/analyse_subtitles_job.cc
@@ -21,6 +21,7 @@
#include "analyse_subtitles_job.h"
#include "bitmap_text.h"
+#include "film.h"
#include "image.h"
#include "player.h"
#include "playlist.h"
diff --git a/src/lib/dcp_subtitle_decoder.cc b/src/lib/dcp_subtitle_decoder.cc
index fa92193a5..b3e6d7553 100644
--- a/src/lib/dcp_subtitle_decoder.cc
+++ b/src/lib/dcp_subtitle_decoder.cc
@@ -21,6 +21,7 @@
#include "dcp_subtitle_content.h"
#include "dcp_subtitle_decoder.h"
+#include "film.h"
#include "font.h"
#include "text_content.h"
#include "util.h"
diff --git a/src/lib/decoder.h b/src/lib/decoder.h
index 34153eafc..7097db88d 100644
--- a/src/lib/decoder.h
+++ b/src/lib/decoder.h
@@ -29,7 +29,6 @@
#include "dcpomatic_time.h"
-#include "film.h"
#include "weak_film.h"
#include <boost/utility.hpp>
diff --git a/src/lib/film.cc b/src/lib/film.cc
index 2840d0236..2fa720b02 100644
--- a/src/lib/film.cc
+++ b/src/lib/film.cc
@@ -1095,21 +1095,21 @@ Film::set_directory (boost::filesystem::path d)
void
Film::set_name (string n)
{
- FilmChangeSignaller ch (this, Property::NAME);
+ FilmChangeSignaller ch(this, FilmProperty::NAME);
_name = n;
}
void
Film::set_use_isdcf_name (bool u)
{
- FilmChangeSignaller ch (this, Property::USE_ISDCF_NAME);
+ FilmChangeSignaller ch(this, FilmProperty::USE_ISDCF_NAME);
_use_isdcf_name = u;
}
void
Film::set_dcp_content_type (DCPContentType const * t)
{
- FilmChangeSignaller ch (this, Property::DCP_CONTENT_TYPE);
+ FilmChangeSignaller ch(this, FilmProperty::DCP_CONTENT_TYPE);
_dcp_content_type = t;
}
@@ -1121,7 +1121,7 @@ Film::set_dcp_content_type (DCPContentType const * t)
void
Film::set_container (Ratio const * c, bool explicit_user)
{
- FilmChangeSignaller ch (this, Property::CONTAINER);
+ FilmChangeSignaller ch(this, FilmProperty::CONTAINER);
_container = c;
if (explicit_user) {
@@ -1137,7 +1137,7 @@ Film::set_container (Ratio const * c, bool explicit_user)
void
Film::set_resolution (Resolution r, bool explicit_user)
{
- FilmChangeSignaller ch (this, Property::RESOLUTION);
+ FilmChangeSignaller ch(this, FilmProperty::RESOLUTION);
_resolution = r;
if (explicit_user) {
@@ -1149,7 +1149,7 @@ Film::set_resolution (Resolution r, bool explicit_user)
void
Film::set_j2k_bandwidth (int b)
{
- FilmChangeSignaller ch (this, Property::J2K_BANDWIDTH);
+ FilmChangeSignaller ch(this, FilmProperty::J2K_BANDWIDTH);
_j2k_bandwidth = b;
}
@@ -1160,7 +1160,7 @@ Film::set_j2k_bandwidth (int b)
void
Film::set_video_frame_rate (int f, bool user_explicit)
{
- FilmChangeSignaller ch (this, Property::VIDEO_FRAME_RATE);
+ FilmChangeSignaller ch(this, FilmProperty::VIDEO_FRAME_RATE);
_video_frame_rate = f;
if (user_explicit) {
_user_explicit_video_frame_rate = true;
@@ -1170,14 +1170,14 @@ Film::set_video_frame_rate (int f, bool user_explicit)
void
Film::set_audio_channels (int c)
{
- FilmChangeSignaller ch (this, Property::AUDIO_CHANNELS);
+ FilmChangeSignaller ch(this, FilmProperty::AUDIO_CHANNELS);
_audio_channels = c;
}
void
Film::set_three_d (bool t)
{
- FilmChangeSignaller ch (this, Property::THREE_D);
+ FilmChangeSignaller ch(this, FilmProperty::THREE_D);
_three_d = t;
if (_three_d && _two_d_version_of_three_d) {
@@ -1188,7 +1188,7 @@ Film::set_three_d (bool t)
void
Film::set_interop (bool i)
{
- FilmChangeSignaller ch (this, Property::INTEROP);
+ FilmChangeSignaller ch(this, FilmProperty::INTEROP);
_interop = i;
}
@@ -1196,7 +1196,7 @@ Film::set_interop (bool i)
void
Film::set_limit_to_smpte_bv20(bool limit)
{
- FilmChangeSignaller ch(this, Property::LIMIT_TO_SMPTE_BV20);
+ FilmChangeSignaller ch(this, FilmProperty::LIMIT_TO_SMPTE_BV20);
_limit_to_smpte_bv20 = limit;
}
@@ -1204,15 +1204,15 @@ Film::set_limit_to_smpte_bv20(bool limit)
void
Film::set_audio_processor (AudioProcessor const * processor)
{
- FilmChangeSignaller ch1 (this, Property::AUDIO_PROCESSOR);
- FilmChangeSignaller ch2 (this, Property::AUDIO_CHANNELS);
+ FilmChangeSignaller ch1(this, FilmProperty::AUDIO_PROCESSOR);
+ FilmChangeSignaller ch2(this, FilmProperty::AUDIO_CHANNELS);
_audio_processor = processor;
}
void
Film::set_reel_type (ReelType t)
{
- FilmChangeSignaller ch (this, Property::REEL_TYPE);
+ FilmChangeSignaller ch(this, FilmProperty::REEL_TYPE);
_reel_type = t;
}
@@ -1220,30 +1220,30 @@ Film::set_reel_type (ReelType t)
void
Film::set_reel_length (int64_t r)
{
- FilmChangeSignaller ch (this, Property::REEL_LENGTH);
+ FilmChangeSignaller ch(this, FilmProperty::REEL_LENGTH);
_reel_length = r;
}
void
Film::set_reencode_j2k (bool r)
{
- FilmChangeSignaller ch (this, Property::REENCODE_J2K);
+ FilmChangeSignaller ch(this, FilmProperty::REENCODE_J2K);
_reencode_j2k = r;
}
void
Film::signal_change (ChangeType type, int p)
{
- signal_change (type, static_cast<Property>(p));
+ signal_change(type, static_cast<FilmProperty>(p));
}
void
-Film::signal_change (ChangeType type, Property p)
+Film::signal_change(ChangeType type, FilmProperty p)
{
if (type == ChangeType::DONE) {
set_dirty (true);
- if (p == Property::CONTENT) {
+ if (p == FilmProperty::CONTENT) {
if (!_user_explicit_video_frame_rate) {
set_video_frame_rate (best_video_frame_rate());
}
@@ -1251,7 +1251,7 @@ Film::signal_change (ChangeType type, Property p)
emit (boost::bind (boost::ref (Change), type, p));
- if (p == Property::VIDEO_FRAME_RATE || p == Property::SEQUENCE) {
+ if (p == FilmProperty::VIDEO_FRAME_RATE || p == FilmProperty::SEQUENCE) {
/* We want to call Playlist::maybe_sequence but this must happen after the
main signal emission (since the butler will see that emission and un-suspend itself).
*/
@@ -1334,7 +1334,7 @@ Film::cpls () const
void
Film::set_encrypted (bool e)
{
- FilmChangeSignaller ch (this, Property::ENCRYPTED);
+ FilmChangeSignaller ch(this, FilmProperty::ENCRYPTED);
_encrypted = e;
}
@@ -1503,9 +1503,9 @@ void
Film::playlist_content_change (ChangeType type, weak_ptr<Content> c, int p, bool frequent)
{
if (p == ContentProperty::VIDEO_FRAME_RATE) {
- signal_change (type, Property::CONTENT);
+ signal_change(type, FilmProperty::CONTENT);
} else if (p == AudioContentProperty::STREAMS) {
- signal_change (type, Property::NAME);
+ signal_change(type, FilmProperty::NAME);
}
if (type == ChangeType::DONE) {
@@ -1529,8 +1529,8 @@ Film::playlist_length_change ()
void
Film::playlist_change (ChangeType type)
{
- signal_change (type, Property::CONTENT);
- signal_change (type, Property::NAME);
+ signal_change(type, FilmProperty::CONTENT);
+ signal_change(type, FilmProperty::NAME);
if (type == ChangeType::DONE) {
check_settings_consistency ();
@@ -1595,7 +1595,7 @@ void
Film::playlist_order_changed ()
{
/* XXX: missing PENDING */
- signal_change (ChangeType::DONE, Property::CONTENT_ORDER);
+ signal_change(ChangeType::DONE, FilmProperty::CONTENT_ORDER);
}
@@ -1606,7 +1606,7 @@ Film::set_sequence (bool s)
return;
}
- FilmChangeSignaller cc (this, Property::SEQUENCE);
+ FilmChangeSignaller cc(this, FilmProperty::SEQUENCE);
_sequence = s;
_playlist->set_sequence (s);
}
@@ -1956,7 +1956,7 @@ Film::closed_caption_tracks () const
void
Film::set_marker (dcp::Marker type, DCPTime time)
{
- FilmChangeSignaller ch (this, Property::MARKERS);
+ FilmChangeSignaller ch(this, FilmProperty::MARKERS);
_markers[type] = time;
}
@@ -1964,7 +1964,7 @@ Film::set_marker (dcp::Marker type, DCPTime time)
void
Film::unset_marker (dcp::Marker type)
{
- FilmChangeSignaller ch (this, Property::MARKERS);
+ FilmChangeSignaller ch(this, FilmProperty::MARKERS);
_markers.erase (type);
}
@@ -1972,7 +1972,7 @@ Film::unset_marker (dcp::Marker type)
void
Film::clear_markers ()
{
- FilmChangeSignaller ch (this, Property::MARKERS);
+ FilmChangeSignaller ch(this, FilmProperty::MARKERS);
_markers.clear ();
}
@@ -1980,14 +1980,14 @@ Film::clear_markers ()
void
Film::set_ratings (vector<dcp::Rating> r)
{
- FilmChangeSignaller ch (this, Property::RATINGS);
+ FilmChangeSignaller ch(this, FilmProperty::RATINGS);
_ratings = r;
}
void
Film::set_content_versions (vector<string> v)
{
- FilmChangeSignaller ch (this, Property::CONTENT_VERSIONS);
+ FilmChangeSignaller ch(this, FilmProperty::CONTENT_VERSIONS);
_content_versions = v;
}
@@ -1995,7 +1995,7 @@ Film::set_content_versions (vector<string> v)
void
Film::set_name_language (dcp::LanguageTag lang)
{
- FilmChangeSignaller ch (this, Property::NAME_LANGUAGE);
+ FilmChangeSignaller ch(this, FilmProperty::NAME_LANGUAGE);
_name_language = lang;
}
@@ -2003,7 +2003,7 @@ Film::set_name_language (dcp::LanguageTag lang)
void
Film::set_release_territory (optional<dcp::LanguageTag::RegionSubtag> region)
{
- FilmChangeSignaller ch (this, Property::RELEASE_TERRITORY);
+ FilmChangeSignaller ch(this, FilmProperty::RELEASE_TERRITORY);
_release_territory = region;
}
@@ -2011,7 +2011,7 @@ Film::set_release_territory (optional<dcp::LanguageTag::RegionSubtag> region)
void
Film::set_status (dcp::Status s)
{
- FilmChangeSignaller ch (this, Property::STATUS);
+ FilmChangeSignaller ch(this, FilmProperty::STATUS);
_status = s;
}
@@ -2019,7 +2019,7 @@ Film::set_status (dcp::Status s)
void
Film::set_version_number (int v)
{
- FilmChangeSignaller ch (this, Property::VERSION_NUMBER);
+ FilmChangeSignaller ch(this, FilmProperty::VERSION_NUMBER);
_version_number = v;
}
@@ -2027,7 +2027,7 @@ Film::set_version_number (int v)
void
Film::set_chain (optional<string> c)
{
- FilmChangeSignaller ch (this, Property::CHAIN);
+ FilmChangeSignaller ch(this, FilmProperty::CHAIN);
_chain = c;
}
@@ -2035,7 +2035,7 @@ Film::set_chain (optional<string> c)
void
Film::set_distributor (optional<string> d)
{
- FilmChangeSignaller ch (this, Property::DISTRIBUTOR);
+ FilmChangeSignaller ch(this, FilmProperty::DISTRIBUTOR);
_distributor = d;
}
@@ -2043,7 +2043,7 @@ Film::set_distributor (optional<string> d)
void
Film::set_luminance (optional<dcp::Luminance> l)
{
- FilmChangeSignaller ch (this, Property::LUMINANCE);
+ FilmChangeSignaller ch(this, FilmProperty::LUMINANCE);
_luminance = l;
}
@@ -2051,7 +2051,7 @@ Film::set_luminance (optional<dcp::Luminance> l)
void
Film::set_facility (optional<string> f)
{
- FilmChangeSignaller ch (this, Property::FACILITY);
+ FilmChangeSignaller ch(this, FilmProperty::FACILITY);
_facility = f;
}
@@ -2059,7 +2059,7 @@ Film::set_facility (optional<string> f)
void
Film::set_studio (optional<string> s)
{
- FilmChangeSignaller ch (this, Property::STUDIO);
+ FilmChangeSignaller ch(this, FilmProperty::STUDIO);
_studio = s;
}
@@ -2107,7 +2107,7 @@ Film::add_ffoc_lfoc (Markers& markers) const
void
Film::set_temp_version (bool t)
{
- FilmChangeSignaller ch (this, Property::TEMP_VERSION);
+ FilmChangeSignaller ch(this, FilmProperty::TEMP_VERSION);
_temp_version = t;
}
@@ -2115,7 +2115,7 @@ Film::set_temp_version (bool t)
void
Film::set_pre_release (bool p)
{
- FilmChangeSignaller ch (this, Property::PRE_RELEASE);
+ FilmChangeSignaller ch(this, FilmProperty::PRE_RELEASE);
_pre_release = p;
}
@@ -2123,7 +2123,7 @@ Film::set_pre_release (bool p)
void
Film::set_red_band (bool r)
{
- FilmChangeSignaller ch (this, Property::RED_BAND);
+ FilmChangeSignaller ch(this, FilmProperty::RED_BAND);
_red_band = r;
}
@@ -2131,7 +2131,7 @@ Film::set_red_band (bool r)
void
Film::set_two_d_version_of_three_d (bool t)
{
- FilmChangeSignaller ch (this, Property::TWO_D_VERSION_OF_THREE_D);
+ FilmChangeSignaller ch(this, FilmProperty::TWO_D_VERSION_OF_THREE_D);
_two_d_version_of_three_d = t;
}
@@ -2139,7 +2139,7 @@ Film::set_two_d_version_of_three_d (bool t)
void
Film::set_audio_language (optional<dcp::LanguageTag> language)
{
- FilmChangeSignaller ch (this, Property::AUDIO_LANGUAGE);
+ FilmChangeSignaller ch(this, FilmProperty::AUDIO_LANGUAGE);
_audio_language = language;
}
@@ -2147,7 +2147,7 @@ Film::set_audio_language (optional<dcp::LanguageTag> language)
void
Film::set_audio_frame_rate (int rate)
{
- FilmChangeSignaller ch (this, Property::AUDIO_FRAME_RATE);
+ FilmChangeSignaller ch(this, FilmProperty::AUDIO_FRAME_RATE);
_audio_frame_rate = rate;
}
@@ -2162,7 +2162,7 @@ Film::has_sign_language_video_channel () const
void
Film::set_sign_language_video_language (optional<dcp::LanguageTag> lang)
{
- FilmChangeSignaller ch (this, Property::SIGN_LANGUAGE_VIDEO_LANGUAGE);
+ FilmChangeSignaller ch(this, FilmProperty::SIGN_LANGUAGE_VIDEO_LANGUAGE);
_sign_language_video_language = lang;
}
diff --git a/src/lib/film.h b/src/lib/film.h
index 958c388b3..22b58f746 100644
--- a/src/lib/film.h
+++ b/src/lib/film.h
@@ -32,6 +32,7 @@
#include "change_signaller.h"
#include "dcp_text_track.h"
#include "dcpomatic_time.h"
+#include "film_property.h"
#include "frame_rate_change.h"
#include "named_channel.h"
#include "resolution.h"
@@ -44,6 +45,7 @@
#include <dcp/key.h>
#include <dcp/language_tag.h>
#include <dcp/rating.h>
+#include <dcp/types.h>
#include <boost/filesystem.hpp>
#include <boost/signals2.hpp>
#include <boost/thread.hpp>
@@ -207,53 +209,6 @@ public:
bool last_written_by_earlier_than(int major, int minor, int micro) const;
- /** Identifiers for the parts of our state; used for signalling changes */
- enum class Property {
- NONE,
- NAME,
- USE_ISDCF_NAME,
- /** The playlist's content list has changed (i.e. content has been added or removed) */
- CONTENT,
- /** The order of content in the playlist has changed */
- CONTENT_ORDER,
- DCP_CONTENT_TYPE,
- CONTAINER,
- RESOLUTION,
- ENCRYPTED,
- J2K_BANDWIDTH,
- VIDEO_FRAME_RATE,
- AUDIO_FRAME_RATE,
- AUDIO_CHANNELS,
- /** The setting of _three_d has changed */
- THREE_D,
- SEQUENCE,
- INTEROP,
- LIMIT_TO_SMPTE_BV20,
- AUDIO_PROCESSOR,
- REEL_TYPE,
- REEL_LENGTH,
- REENCODE_J2K,
- MARKERS,
- RATINGS,
- CONTENT_VERSIONS,
- NAME_LANGUAGE,
- AUDIO_LANGUAGE,
- RELEASE_TERRITORY,
- SIGN_LANGUAGE_VIDEO_LANGUAGE,
- VERSION_NUMBER,
- STATUS,
- CHAIN,
- DISTRIBUTOR,
- FACILITY,
- STUDIO,
- TEMP_VERSION,
- PRE_RELEASE,
- RED_BAND,
- TWO_D_VERSION_OF_THREE_D,
- LUMINANCE,
- };
-
-
/* GET */
boost::optional<boost::filesystem::path> directory () const {
@@ -468,7 +423,7 @@ public:
void add_ffoc_lfoc (Markers& markers) const;
/** Emitted when some property has of the Film is about to change or has changed */
- mutable boost::signals2::signal<void (ChangeType, Property)> Change;
+ mutable boost::signals2::signal<void (ChangeType, FilmProperty)> Change;
/** Emitted when some property of our content has changed */
mutable boost::signals2::signal<void (ChangeType, std::weak_ptr<Content>, int, bool)> ContentChange;
@@ -496,7 +451,7 @@ private:
boost::filesystem::path info_file (dcpomatic::DCPTimePeriod p) const;
- void signal_change (ChangeType, Property);
+ void signal_change (ChangeType, FilmProperty);
void signal_change (ChangeType, int);
std::string video_identifier () const;
void playlist_change (ChangeType);
@@ -606,7 +561,7 @@ private:
};
-typedef ChangeSignaller<Film, Film::Property> FilmChangeSignaller;
+typedef ChangeSignaller<Film, FilmProperty> FilmChangeSignaller;
#endif
diff --git a/src/lib/film_property.h b/src/lib/film_property.h
new file mode 100644
index 000000000..55596af70
--- /dev/null
+++ b/src/lib/film_property.h
@@ -0,0 +1,77 @@
+/*
+ Copyright (C) 2012-2021 Carl Hetherington <cth@carlh.net>
+
+ This file is part of DCP-o-matic.
+
+ DCP-o-matic is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ DCP-o-matic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with DCP-o-matic. If not, see <http://www.gnu.org/licenses/>.
+
+*/
+
+
+#ifndef DCPOMATIC_FILM_PROPERTY_H
+#define DCPOMATIC_FILM_PROPERTY_H
+
+
+/** Identifiers for the parts of a Film's state; used for signalling changes.
+ * This could go in Film but separating it out saves a lot of includes of
+ * film.h
+ */
+enum class FilmProperty {
+ NONE,
+ NAME,
+ USE_ISDCF_NAME,
+ /** The playlist's content list has changed (i.e. content has been added or removed) */
+ CONTENT,
+ /** The order of content in the playlist has changed */
+ CONTENT_ORDER,
+ DCP_CONTENT_TYPE,
+ CONTAINER,
+ RESOLUTION,
+ ENCRYPTED,
+ J2K_BANDWIDTH,
+ VIDEO_FRAME_RATE,
+ AUDIO_FRAME_RATE,
+ AUDIO_CHANNELS,
+ /** The setting of _three_d has changed */
+ THREE_D,
+ SEQUENCE,
+ INTEROP,
+ LIMIT_TO_SMPTE_BV20,
+ AUDIO_PROCESSOR,
+ REEL_TYPE,
+ REEL_LENGTH,
+ REENCODE_J2K,
+ MARKERS,
+ RATINGS,
+ CONTENT_VERSIONS,
+ NAME_LANGUAGE,
+ AUDIO_LANGUAGE,
+ RELEASE_TERRITORY,
+ SIGN_LANGUAGE_VIDEO_LANGUAGE,
+ VERSION_NUMBER,
+ STATUS,
+ CHAIN,
+ DISTRIBUTOR,
+ FACILITY,
+ STUDIO,
+ TEMP_VERSION,
+ PRE_RELEASE,
+ RED_BAND,
+ TWO_D_VERSION_OF_THREE_D,
+ LUMINANCE,
+};
+
+
+#endif
+
diff --git a/src/lib/image_decoder.h b/src/lib/image_decoder.h
index 067a24720..41924735c 100644
--- a/src/lib/image_decoder.h
+++ b/src/lib/image_decoder.h
@@ -20,6 +20,7 @@
#include "decoder.h"
+#include "types.h"
class ImageContent;
diff --git a/src/lib/player.cc b/src/lib/player.cc
index 610d7748d..40773e250 100644
--- a/src/lib/player.cc
+++ b/src/lib/player.cc
@@ -143,7 +143,7 @@ Player::construct ()
connect();
set_video_container_size(film->frame_size());
- film_change (ChangeType::DONE, Film::Property::AUDIO_PROCESSOR);
+ film_change(ChangeType::DONE, FilmProperty::AUDIO_PROCESSOR);
setup_pieces ();
seek (DCPTime (), true);
@@ -481,7 +481,7 @@ Player::playlist_change (ChangeType type)
void
-Player::film_change (ChangeType type, Film::Property p)
+Player::film_change(ChangeType type, FilmProperty p)
{
/* Here we should notice Film properties that affect our output, and
alert listeners that our output now would be different to how it was
@@ -493,9 +493,9 @@ Player::film_change (ChangeType type, Film::Property p)
return;
}
- if (p == Film::Property::CONTAINER) {
+ if (p == FilmProperty::CONTAINER) {
Change (type, PlayerProperty::FILM_CONTAINER, false);
- } else if (p == Film::Property::VIDEO_FRAME_RATE) {
+ } else if (p == FilmProperty::VIDEO_FRAME_RATE) {
/* Pieces contain a FrameRateChange which contains the DCP frame rate,
so we need new pieces here.
*/
@@ -503,12 +503,12 @@ Player::film_change (ChangeType type, Film::Property p)
setup_pieces ();
}
Change (type, PlayerProperty::FILM_VIDEO_FRAME_RATE, false);
- } else if (p == Film::Property::AUDIO_PROCESSOR) {
+ } else if (p == FilmProperty::AUDIO_PROCESSOR) {
if (type == ChangeType::DONE && film->audio_processor ()) {
boost::mutex::scoped_lock lm (_mutex);
_audio_processor = film->audio_processor()->clone(film->audio_frame_rate());
}
- } else if (p == Film::Property::AUDIO_CHANNELS) {
+ } else if (p == FilmProperty::AUDIO_CHANNELS) {
if (type == ChangeType::DONE) {
boost::mutex::scoped_lock lm (_mutex);
_audio_merger.clear ();
diff --git a/src/lib/player.h b/src/lib/player.h
index e8f768521..5950b95a3 100644
--- a/src/lib/player.h
+++ b/src/lib/player.h
@@ -31,9 +31,10 @@
#include "content_audio.h"
#include "content_text.h"
#include "content_video.h"
+#include "dcp_text_track.h"
#include "empty.h"
#include "enum_indexed_vector.h"
-#include "film.h"
+#include "film_property.h"
#include "image.h"
#include "player_text.h"
#include "position_image.h"
@@ -49,6 +50,7 @@ namespace dcp {
class AtmosContent;
class AudioBuffers;
class Content;
+class Film;
class PlayerVideo;
class Playlist;
class ReferencedReelAsset;
@@ -142,7 +144,7 @@ private:
void construct ();
void connect();
void setup_pieces ();
- void film_change (ChangeType, Film::Property);
+ void film_change(ChangeType, FilmProperty);
void playlist_change (ChangeType);
void playlist_content_change (ChangeType, int, bool);
Frame dcp_to_content_video (std::shared_ptr<const Piece> piece, dcpomatic::DCPTime t) const;
diff --git a/src/lib/subtitle_encoder.cc b/src/lib/subtitle_encoder.cc
index 51b9963bc..4ce894afb 100644
--- a/src/lib/subtitle_encoder.cc
+++ b/src/lib/subtitle_encoder.cc
@@ -20,6 +20,7 @@
#include "compose.hpp"
+#include "film.h"
#include "job.h"
#include "player.h"
#include "subtitle_encoder.h"
diff --git a/src/lib/util.cc b/src/lib/util.cc
index 8c5700598..be5ab5b95 100644
--- a/src/lib/util.cc
+++ b/src/lib/util.cc
@@ -54,6 +54,7 @@
#include "video_content.h"
#include <dcp/atmos_asset.h>
#include <dcp/decrypted_kdm.h>
+#include <dcp/file.h>
#include <dcp/locale_convert.h>
#include <dcp/picture_asset.h>
#include <dcp/raw_convert.h>