class Player;
class Playlist;
class AudioContent;
+class Scaler;
+class Screen;
/** @class Film
*
class Film : public boost::enable_shared_from_this<Film>, public boost::noncopyable
{
public:
- Film (std::string d);
+ Film (boost::filesystem::path);
std::string info_dir () const;
std::string j2c_path (int, Eyes, bool) const;
bool has_subtitles () const;
OutputVideoFrame best_video_frame_rate () const;
+ void make_kdms (
+ std::list<boost::shared_ptr<Screen> >,
+ boost::posix_time::ptime from,
+ boost::posix_time::ptime until,
+ std::string directory
+ ) const;
+
/** Identifiers for the parts of our state;
used for signalling changes.
*/
RESOLUTION,
SCALER,
WITH_SUBTITLES,
+ ENCRYPTED,
J2K_BANDWIDTH,
DCI_METADATA,
VIDEO_FRAME_RATE,
/** The setting of _three_d has been changed */
THREE_D,
SEQUENCE_VIDEO,
+ INTEROP,
};
return _with_subtitles;
}
+ bool encrypted () const {
+ return _encrypted;
+ }
+
int j2k_bandwidth () const {
return _j2k_bandwidth;
}
bool sequence_video () const {
return _sequence_video;
}
+
+ bool interop () const {
+ return _interop;
+ }
/* SET */
void set_resolution (Resolution);
void set_scaler (Scaler const *);
void set_with_subtitles (bool);
+ void set_encrypted (bool);
void set_j2k_bandwidth (int);
void set_dci_metadata (DCIMetadata);
void set_video_frame_rate (int);
void set_three_d (bool);
void set_dci_date_today ();
void set_sequence_video (bool);
+ void set_interop (bool);
/** Emitted when some property has of the Film has changed */
mutable boost::signals2::signal<void (Property)> Changed;
Scaler const * _scaler;
/** True if subtitles should be shown for this film */
bool _with_subtitles;
+ bool _encrypted;
/** bandwidth for J2K files in bits per second */
int _j2k_bandwidth;
/** DCI naming stuff */
*/
bool _three_d;
bool _sequence_video;
+ bool _interop;
/** true if our state has changed since we last saved it */
mutable bool _dirty;