*/
#include "audio_analysis.h"
+#include "audio_buffers.h"
#include "analyse_audio_job.h"
#include "compose.hpp"
#include "film.h"
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");
+}
+
+string
+AnalyseAudioJob::json_name () const
+{
+ return N_("analyse_audio");
}
void
player->Audio.connect (bind (&AnalyseAudioJob::audio, this, _1, _2));
- _samples_per_point = max (int64_t (1), _film->time_to_audio_frames (_film->length()) / _num_points);
+ int64_t const len = _film->length().frames (_film->audio_frame_rate());
+ _samples_per_point = max (int64_t (1), len / _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;
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 ());
}
void
-AnalyseAudioJob::audio (shared_ptr<const AudioBuffers> b, Time)
+AnalyseAudioJob::audio (shared_ptr<const AudioBuffers> b, DCPTime)
{
for (int i = 0; i < b->frames(); ++i) {
for (int j = 0; j < b->channels(); ++j) {