- if (filesystem::is_directory (fs->content_path ())) {
- /* Assume a directory contains TIFFs */
- return shared_ptr<Decoder> (new TIFFDecoder (fs, o, j, l, minimal, ignore_length));
+ if (f->content().empty()) {
+ return Decoders ();
+ }
+
+ if (boost::filesystem::is_directory (f->content_path()) || f->content_type() == STILL) {
+ /* A single image file, or a directory of them */
+ return Decoders (
+ shared_ptr<VideoDecoder> (new ImageMagickDecoder (f, o)),
+ shared_ptr<AudioDecoder> (new ExternalAudioDecoder (f, o))
+ );