#include <libcxml/cxml.h>
#include <boost/filesystem.hpp>
#include <boost/signals2.hpp>
#include <libcxml/cxml.h>
#include <boost/filesystem.hpp>
#include <boost/signals2.hpp>
dcpomatic::DCPTime length_after_trim (std::shared_ptr<const Film> film) const;
boost::optional<double> video_frame_rate () const {
dcpomatic::DCPTime length_after_trim (std::shared_ptr<const Film> film) const;
boost::optional<double> video_frame_rate () const {
void unset_video_frame_rate ();
double active_video_frame_rate (std::shared_ptr<const Film> film) const;
void unset_video_frame_rate ();
double active_video_frame_rate (std::shared_ptr<const Film> film) const;
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;
* else (either some video happening at the same time, or the rate of the DCP).
*/
boost::optional<double> _video_frame_rate;
* else (either some video happening at the same time, or the rate of the DCP).
*/
boost::optional<double> _video_frame_rate;