Rename TYPE_DEBUG_PLAYER to TYPE_DEBUG_VIDEO_VIEW.
[dcpomatic.git] / src / lib / audio_analysis.h
index 6da651c95a06bf670719222052a307b43a160b25..99a69edb4c26dfccccb77cd81c48e069301a436f 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2012-2015 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2012-2018 Carl Hetherington <cth@carlh.net>
 
     This file is part of DCP-o-matic.
 
@@ -43,13 +43,13 @@ public:
        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) {
@@ -100,6 +100,30 @@ public:
                _analysis_gain = gain;
        }
 
+       int64_t samples_per_point () const {
+               return _samples_per_point;
+       }
+
+       void set_samples_per_point (int64_t spp) {
+               _samples_per_point = spp;
+       }
+
+       int sample_rate () const {
+               return _sample_rate;
+       }
+
+       void set_sample_rate (int sr) {
+               _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);
@@ -110,11 +134,14 @@ private:
        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;
+       int64_t _samples_per_point;
+       int _sample_rate;
 
        static int const _current_state_version;
 };