Tidy up J2KImageProxy a bit.
[dcpomatic.git] / src / lib / encoder.cc
index c6cb8b9dfdd72f651b052d6ff96d6a90651b36be..83baacd418b7201d91c7af428c4b73fbe8b217ad 100644 (file)
@@ -33,6 +33,7 @@
 #include "server_finder.h"
 #include "player.h"
 #include "player_video.h"
+#include "data.h"
 #include <libcxml/cxml.h>
 #include <boost/lambda/lambda.hpp>
 #include <iostream>
@@ -279,7 +280,7 @@ try
        */
        int remote_backoff = 0;
        shared_ptr<DCPVideo> last_dcp_video;
-       shared_ptr<Data> last_encoded;
+       optional<Data> last_encoded;
        
        while (true) {
 
@@ -300,7 +301,7 @@ try
                
                lock.unlock ();
 
-               shared_ptr<Data> encoded;
+               optional<Data> encoded;
 
                if (last_dcp_video && vf->same (last_dcp_video)) {
                        /* We already have encoded data for the same input as this one, so take a short-cut */
@@ -344,7 +345,7 @@ try
                last_encoded = encoded;
 
                if (encoded) {
-                       _writer->write (encoded, vf->index (), vf->eyes ());
+                       _writer->write (encoded.get(), vf->index (), vf->eyes ());
                        frame_done ();
                } else {
                        lock.lock ();