From 4fbd1901fdabc829cfa7e7d4d0c1272bba87033c Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Thu, 15 Nov 2012 22:26:16 +0000 Subject: Untested external audio support; AB transcodes still broken. --- src/lib/decoder_factory.cc | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'src/lib/decoder_factory.cc') diff --git a/src/lib/decoder_factory.cc b/src/lib/decoder_factory.cc index bb6eff971..e9b5bfa9e 100644 --- a/src/lib/decoder_factory.cc +++ b/src/lib/decoder_factory.cc @@ -25,19 +25,30 @@ #include "ffmpeg_decoder.h" #include "imagemagick_decoder.h" #include "film.h" +#include "external_audio_decoder.h" using std::string; +using std::pair; +using std::make_pair; using boost::shared_ptr; -shared_ptr +pair, shared_ptr > decoder_factory ( shared_ptr f, shared_ptr o, Job* j ) { if (boost::filesystem::is_directory (f->content_path()) || f->content_type() == STILL) { /* A single image file, or a directory of them */ - return shared_ptr (new ImageMagickDecoder (f, o, j)); + return make_pair ( + shared_ptr (new ImageMagickDecoder (f, o, j)), + shared_ptr () + ); + } + + shared_ptr fd (new FFmpegDecoder (f, o, j)); + if (f->use_content_audio()) { + return make_pair (fd, fd); } - return shared_ptr (new FFmpegDecoder (f, o, j)); + return make_pair (fd, shared_ptr (new ExternalAudioDecoder (f, o, j))); } -- cgit v1.2.3