Basic recent files list in the File menu.
[dcpomatic.git] / src / lib / analyse_audio_job.cc
index 2848c1ed773c16dfe5b6acbf0b3c0f6b61f65aac..ab985bdf75468ee557a81f0307d09a919df390e0 100644 (file)
@@ -45,12 +45,7 @@ AnalyseAudioJob::AnalyseAudioJob (shared_ptr<const Film> f, shared_ptr<AudioCont
 string
 AnalyseAudioJob::name () const
 {
-       shared_ptr<AudioContent> content = _content.lock ();
-       if (!content) {
-               return "";
-       }
-       
-       return String::compose (_("Analyse audio of %1"), content->file().filename());
+       return _("Analyse audio");
 }
 
 void
@@ -70,12 +65,13 @@ AnalyseAudioJob::run ()
 
        _samples_per_point = max (int64_t (1), _film->time_to_audio_frames (_film->length()) / _num_points);
 
-       _current.resize (_film->dcp_audio_channels ());
-       _analysis.reset (new AudioAnalysis (_film->dcp_audio_channels ()));
+       _current.resize (_film->audio_channels ());
+       _analysis.reset (new AudioAnalysis (_film->audio_channels ()));
 
        _done = 0;
+       OutputAudioFrame const len = _film->time_to_audio_frames (_film->length ());
        while (!player->pass ()) {
-               set_progress (double (_film->audio_frames_to_time (_done)) / _film->length ());
+               set_progress (double (_done) / len);
        }
 
        _analysis->write (content->audio_analysis_path ());
@@ -91,7 +87,7 @@ AnalyseAudioJob::audio (shared_ptr<const AudioBuffers> b, Time)
                for (int j = 0; j < b->channels(); ++j) {
                        float s = b->data(j)[i];
                        if (fabsf (s) < 10e-7) {
-                               /* stringstream can't serialise and recover inf or -inf, so prevent such
+                               /* SafeStringStream can't serialise and recover inf or -inf, so prevent such
                                   values by replacing with this (140dB down) */
                                s = 10e-7;
                        }