Fix missing version string when Popen communicate returns byte strings.
[libdcp.git] / src / stereo_picture_frame.cc
index d00be2f9fa658bcbe4e02a8b7a7f6b7245bc408c..8b8f9b91e8524b9c00b3deb1a6da8cd6b65dbf7a 100644 (file)
 
     You should have received a copy of the GNU General Public License
     along with libdcp.  If not, see <http://www.gnu.org/licenses/>.
+
+    In addition, as a special exception, the copyright holders give
+    permission to link the code of portions of this program with the
+    OpenSSL library under certain conditions as described in each
+    individual source file, and distribute linked combinations
+    including the two.
+
+    You must obey the GNU General Public License in all respects
+    for all of the code used other than OpenSSL.  If you modify
+    file(s) with this exception, you may extend this exception to your
+    version of the file(s), but you are not obligated to do so.  If you
+    do not wish to do so, delete this exception statement from your
+    version.  If you delete this exception statement from all source
+    files in the program, then also delete it here.
 */
 
 #include "stereo_picture_frame.h"
 #include "util.h"
 #include "rgb_xyz.h"
 #include "colour_conversion.h"
-#include "AS_DCP.h"
-#include "KM_fileio.h"
 #include "compose.hpp"
 #include "j2k.h"
+#include "crypto_context.h"
+#include <asdcp/AS_DCP.h>
+#include <asdcp/KM_fileio.h>
 
 using std::string;
 using boost::shared_ptr;
@@ -35,12 +50,12 @@ using namespace dcp;
  *  @param reader Reader for the MXF file.
  *  @param n Frame within the asset, not taking EntryPoint into account.
  */
-StereoPictureFrame::StereoPictureFrame (ASDCP::JP2K::MXFSReader* reader, int n, ASDCP::AESDecContext* c)
+StereoPictureFrame::StereoPictureFrame (ASDCP::JP2K::MXFSReader* reader, int n, shared_ptr<DecryptionContext> c)
 {
        /* XXX: unfortunate guesswork on this buffer size */
        _buffer = new ASDCP::JP2K::SFrameBuffer (4 * Kumu::Megabyte);
 
-       if (ASDCP_FAILURE (reader->ReadFrame (n, *_buffer, c))) {
+       if (ASDCP_FAILURE (reader->ReadFrame (n, *_buffer, c->context(), c->hmac()))) {
                boost::throw_exception (DCPReadError (String::compose ("could not read video frame %1 of %2", n)));
        }
 }