{
public:
explicit Content ();
Content (dcpomatic::DCPTime);
Content (boost::filesystem::path);
Content (cxml::ConstNodePtr);
{
public:
explicit Content ();
Content (dcpomatic::DCPTime);
Content (boost::filesystem::path);
Content (cxml::ConstNodePtr);
/** Examine the content to establish digest, frame rates and any other
* useful metadata.
* @param job Job to use to report progress, or 0.
/** Examine the content to establish digest, frame rates and any other
* useful metadata.
* @param job Job to use to report progress, or 0.
boost::signals2::signal<void (ChangeType, std::weak_ptr<Content>, int, bool)> Change;
std::shared_ptr<VideoContent> video;
std::shared_ptr<AudioContent> audio;
boost::signals2::signal<void (ChangeType, std::weak_ptr<Content>, int, bool)> Change;
std::shared_ptr<VideoContent> video;
std::shared_ptr<AudioContent> audio;
friend struct best_dcp_frame_rate_test_single;
friend struct best_dcp_frame_rate_test_double;
friend struct audio_sampling_rate_test;
friend struct best_dcp_frame_rate_test_single;
friend struct best_dcp_frame_rate_test_double;
friend struct audio_sampling_rate_test;