- std::string information () const;
- void as_xml (xmlpp::Node *) const;
- boost::shared_ptr<Content> clone () const;
- Time length () const;
-
- /* AudioContent */
- int audio_channels () const;
- ContentAudioFrame audio_length () const;
- int content_audio_frame_rate () const;
- int output_audio_frame_rate () const;
- AudioMapping audio_mapping () const;
-
- std::vector<boost::shared_ptr<FFmpegSubtitleStream> > subtitle_streams () const {
- boost::mutex::scoped_lock lm (_mutex);
- return _subtitle_streams;
- }
-
- boost::shared_ptr<FFmpegSubtitleStream> subtitle_stream () const {
- boost::mutex::scoped_lock lm (_mutex);
- return _subtitle_stream;
- }
-
- std::vector<boost::shared_ptr<FFmpegAudioStream> > audio_streams () const {
- boost::mutex::scoped_lock lm (_mutex);
- return _audio_streams;
- }
-
- boost::shared_ptr<FFmpegAudioStream> audio_stream () const {
- boost::mutex::scoped_lock lm (_mutex);
- return _audio_stream;
- }
-
- void set_subtitle_stream (boost::shared_ptr<FFmpegSubtitleStream>);
- void set_audio_stream (boost::shared_ptr<FFmpegAudioStream>);
-
+ std::string technical_summary () const;
+ void as_xml (xmlpp::Node *, bool with_paths) const;
+ dcpomatic::DCPTime full_length (boost::shared_ptr<const Film> film) const;
+ dcpomatic::DCPTime approximate_length () const;
+
+ std::string identifier () const;
+
+ void set_default_colour_conversion ();
+
+ void set_filters (std::vector<Filter const *> const &);
+
+ std::vector<boost::shared_ptr<FFmpegSubtitleStream> > subtitle_streams () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _subtitle_streams;
+ }
+
+ boost::shared_ptr<FFmpegSubtitleStream> subtitle_stream () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _subtitle_stream;
+ }
+
+ std::vector<boost::shared_ptr<FFmpegAudioStream> > ffmpeg_audio_streams () const;
+
+ std::vector<Filter const *> filters () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _filters;
+ }
+
+ void set_subtitle_stream (boost::shared_ptr<FFmpegSubtitleStream>);
+
+ boost::optional<dcpomatic::ContentTime> first_video () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _first_video;
+ }
+
+ void signal_subtitle_stream_changed ();
+
+#ifdef DCPOMATIC_VARIANT_SWAROOP
+
+ bool encrypted () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _encrypted;
+ }
+
+ void add_kdm (EncryptedECinemaKDM kdm);
+
+ boost::optional<EncryptedECinemaKDM> kdm () const {
+ return _kdm;
+ }
+
+ boost::optional<std::string> id () const {
+ return _id;
+ }
+
+ bool kdm_timing_window_valid () const;
+
+#endif
+