#include "job_manager.h"
#include "film.h"
#include "exceptions.h"
+#include "config.h"
#include "i18n.h"
AudioContent::AudioContent (shared_ptr<const Film> f, Time s)
: Content (f, s)
, _audio_gain (0)
- , _audio_delay (0)
+ , _audio_delay (Config::instance()->default_audio_delay ())
{
}
AudioContent::AudioContent (shared_ptr<const Film> f, boost::filesystem::path p)
: Content (f, p)
, _audio_gain (0)
- , _audio_delay (0)
+ , _audio_delay (Config::instance()->default_audio_delay ())
{
}
signal_changed (AudioContentProperty::AUDIO_DELAY);
}
-void
+boost::signals2::connection
AudioContent::analyse_audio (boost::function<void()> finished)
{
shared_ptr<const Film> film = _film.lock ();
- if (!film) {
- return;
- }
+ assert (film);
shared_ptr<AnalyseAudioJob> job (new AnalyseAudioJob (film, dynamic_pointer_cast<AudioContent> (shared_from_this())));
- job->Finished.connect (finished);
+ boost::signals2::connection c = job->Finished.connect (finished);
JobManager::instance()->add (job);
+
+ return c;
}
boost::filesystem::path