summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lib/content_factory.cc12
1 files changed, 3 insertions, 9 deletions
diff --git a/src/lib/content_factory.cc b/src/lib/content_factory.cc
index ed00639a0..f4d9fe4e9 100644
--- a/src/lib/content_factory.cc
+++ b/src/lib/content_factory.cc
@@ -29,6 +29,7 @@
#include "dcp_subtitle_content.h"
#include "util.h"
#include <libcxml/cxml.h>
+#include <dcp/smpte_subtitle_content.h>
using std::string;
using std::list;
@@ -86,15 +87,8 @@ content_factory (shared_ptr<const Film> film, boost::filesystem::path path)
content.reset (new SubRipContent (film, path));
} else if (ext == ".xml") {
content.reset (new DCPSubtitleContent (film, path));
- } else if (ext == ".mxf") {
- /* Try to read this .mxf as a subtitle file; if we fail, we fall back
- to using FFmpeg below.
- */
- try {
- content.reset (new DCPSubtitleContent (film, path));
- } catch (...) {
-
- }
+ } else if (ext == ".mxf" && dcp::SMPTESubtitleContent::valid_mxf (path)) {
+ content.reset (new DCPSubtitleContent (film, path));
}
if (!content) {