#include "types.h"
#include "isdcf_metadata.h"
#include "frame_rate_change.h"
+#include "signaller.h"
#include "ratio.h"
#include <dcp/key.h>
#include <dcp/encrypted_kdm.h>
class Playlist;
class AudioContent;
class Screen;
+class AudioProcessor;
struct isdcf_name_test;
/** @class Film
*
* The content of a Film is held in a Playlist (created and managed by the Film).
*/
-class Film : public boost::enable_shared_from_this<Film>, public boost::noncopyable
+class Film : public boost::enable_shared_from_this<Film>, public Signaller, public boost::noncopyable
{
public:
Film (boost::filesystem::path, bool log = true);
boost::filesystem::path internal_video_mxf_filename () const;
boost::filesystem::path audio_analysis_dir () const;
- boost::filesystem::path video_mxf_filename () const;
- boost::filesystem::path audio_mxf_filename () const;
- boost::filesystem::path subtitle_xml_filename () const;
-
void send_dcp_to_tms ();
void make_dcp ();
INTEROP,
/** The setting of _burn_subtitles has changed */
BURN_SUBTITLES,
+ AUDIO_PROCESSOR,
};
bool burn_subtitles () const {
return _burn_subtitles;
}
+
+ AudioProcessor const * audio_processor () const {
+ return _audio_processor;
+ }
/* SET */
void set_sequence_video (bool);
void set_interop (bool);
void set_burn_subtitles (bool);
+ void set_audio_processor (AudioProcessor const * processor);
/** Emitted when some property has of the Film has changed */
mutable boost::signals2::signal<void (Property)> Changed;
Resolution _resolution;
bool _signed;
bool _encrypted;
+ dcp::Key _key;
/** bandwidth for J2K files in bits per second */
int _j2k_bandwidth;
/** ISDCF naming stuff */
bool _sequence_video;
bool _interop;
bool _burn_subtitles;
- dcp::Key _key;
+ AudioProcessor const * _audio_processor;
int _state_version;