pot/merge.
[dcpomatic.git] / src / lib / decoder_factory.cc
index 2ded95fefe1b343609f62959dd29b3c7a1edfa08..1acef6f4fbe9326d8b50d0f59050f0489a55e6bc 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2016-2019 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2016-2020 Carl Hetherington <cth@carlh.net>
 
     This file is part of DCP-o-matic.
 
@@ -18,6 +18,8 @@
 
 */
 
+#include "atmos_mxf_content.h"
+#include "atmos_mxf_decoder.h"
 #include "ffmpeg_content.h"
 #include "ffmpeg_decoder.h"
 #include "dcp_content.h"
 #include "video_mxf_content.h"
 #include "video_mxf_decoder.h"
 #include "timer.h"
-#include <boost/foreach.hpp>
 
 using std::list;
-using boost::shared_ptr;
-using boost::dynamic_pointer_cast;
+using std::shared_ptr;
+using std::dynamic_pointer_cast;
 
 template <class T>
 shared_ptr<T>
@@ -89,5 +90,10 @@ decoder_factory (shared_ptr<const Film> film, shared_ptr<const Content> content,
                return shared_ptr<Decoder> (new VideoMXFDecoder(film, vmc));
        }
 
+       shared_ptr<const AtmosMXFContent> amc = dynamic_pointer_cast<const AtmosMXFContent> (content);
+       if (amc) {
+               return shared_ptr<Decoder> (new AtmosMXFDecoder(film, amc));
+       }
+
        return shared_ptr<Decoder> ();
 }