1 #ifndef DCPOMATIC_J2K_ENCODER_FASTVIDEO_BACKEND_H
2 #define DCPOMATIC_J2K_ENCODER_FASTVIDEO_BACKEND_H
5 #include "j2k_encoder_backend.h"
7 #include <fastvideo_encoder_j2k.h>
8 #include <fastvideo_sdk.h>
9 #include <boost/thread.hpp>
10 #include <boost/thread/barrier.hpp>
13 class J2KEncoderFastvideoBackend : public J2KEncoderBackend
16 J2KEncoderFastvideoBackend (boost::barrier& barrier);
17 ~J2KEncoderFastvideoBackend ();
19 std::vector<dcp::Data> encode (std::vector<boost::shared_ptr<DCPVideo> > video);
21 int quantity () const {
26 void setup (dcp::Size size);
28 boost::barrier& _barrier;
30 fastImportFromHostHandle_t _adapter;
31 fastDeviceSurfaceBufferHandle_t _src_buffer;
32 fastEncoderJ2kHandle_t _encoder;
33 uint16_t* _xyz_buffer;
34 int _xyz_buffer_stride;