summaryrefslogtreecommitdiff
path: root/src/reader_factory.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2017-01-11 10:57:09 +0000
committerCarl Hetherington <cth@carlh.net>2017-01-11 10:58:11 +0000
commitf528fc50162db6fcecbaa2cd6121c7ee86a82777 (patch)
treeb5dec339a41dee33fb3ddbc31b1054e0008feffc /src/reader_factory.cc
parentefb00e9649aa03a2c12bb6a63c5e7efdfd99506a (diff)
Replace DCP parser with basic version that uses libdcp.libdcp-again
Diffstat (limited to 'src/reader_factory.cc')
-rw-r--r--src/reader_factory.cc16
1 files changed, 3 insertions, 13 deletions
diff --git a/src/reader_factory.cc b/src/reader_factory.cc
index 6c0259d..5d38e4e 100644
--- a/src/reader_factory.cc
+++ b/src/reader_factory.cc
@@ -18,10 +18,9 @@
*/
#include "reader_factory.h"
-#include "interop_dcp_reader.h"
-#include "smpte_dcp_reader.h"
#include "stl_binary_reader.h"
#include "stl_text_reader.h"
+#include "dcp_reader.h"
#include <libxml++/libxml++.h>
#include <boost/algorithm/string.hpp>
#include <fstream>
@@ -39,21 +38,12 @@ sub::reader_factory (boost::filesystem::path file_name)
transform (ext.begin(), ext.end(), ext.begin(), ::tolower);
if (ext == ".xml") {
- /* XXX: unfortunate API weakness in libcxml; we can't find out what a
- file's root node name is.
- */
- xmlpp::DomParser parser (file_name.string ());
- string const root = parser.get_document()->get_root_node()->get_name();
- if (root == "DCSubtitle") {
- return shared_ptr<Reader> (new InteropDCPReader (file_name));
- } else if (root == "SubtitleReel") {
- return shared_ptr<Reader> (new SMPTEDCPReader (file_name, false));
- }
+ return shared_ptr<Reader> (new DCPReader (file_name));
}
if (ext == ".mxf") {
/* Assume this is some MXF-wrapped SMPTE subtitles */
- return shared_ptr<Reader> (new SMPTEDCPReader (file_name, true));
+ return shared_ptr<Reader> (new DCPReader (file_name));
}
if (ext == ".stl") {