void add_point (int c, AudioPoint const & p);
struct PeakTime {
- PeakTime (float p, DCPTime t)
+ PeakTime (float p, dcpomatic::DCPTime t)
: peak (p)
, time (t)
{}
float peak;
- DCPTime time;
+ dcpomatic::DCPTime time;
};
void set_sample_peak (std::vector<PeakTime> peak) {
_analysis_gain = gain;
}
- boost::optional<int64_t> samples_per_point () const {
+ int64_t samples_per_point () const {
return _samples_per_point;
}
_samples_per_point = spp;
}
- boost::optional<int> sample_rate () const {
+ int sample_rate () const {
return _sample_rate;
}
_sample_rate = sr;
}
+ void set_leqm (double leqm) {
+ _leqm = leqm;
+ }
+
+ boost::optional<double> leqm () const {
+ return _leqm;
+ }
+
void write (boost::filesystem::path);
- float gain_correction (boost::shared_ptr<const Playlist> playlist);
+ float gain_correction (std::shared_ptr<const Playlist> playlist);
private:
std::vector<std::vector<AudioPoint> > _data;
std::vector<float> _true_peak;
boost::optional<float> _integrated_loudness;
boost::optional<float> _loudness_range;
+ boost::optional<double> _leqm;
/** If this analysis was run on a single piece of
* content we store its gain in dB when the analysis
* happened.
*/
boost::optional<double> _analysis_gain;
- boost::optional<int64_t> _samples_per_point;
- boost::optional<int> _sample_rate;
+ int64_t _samples_per_point;
+ int _sample_rate;
static int const _current_state_version;
};