summaryrefslogtreecommitdiff
path: root/src/lib/j2k_encoder_fastvideo_backend.h
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2020-08-14 13:45:13 +0200
committerCarl Hetherington <cth@carlh.net>2020-09-13 20:23:29 +0200
commitca9aec195cbffb3bdc9a5d6ed18ce4c62df4b4e6 (patch)
tree0403515a0d6eb15b5ba6a0de8f5df66cfb1c1636 /src/lib/j2k_encoder_fastvideo_backend.h
parentd89f53b1ad09cf0f739533483915b702a26594b4 (diff)
Missing files.
Diffstat (limited to 'src/lib/j2k_encoder_fastvideo_backend.h')
-rw-r--r--src/lib/j2k_encoder_fastvideo_backend.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/lib/j2k_encoder_fastvideo_backend.h b/src/lib/j2k_encoder_fastvideo_backend.h
new file mode 100644
index 000000000..abf6c4355
--- /dev/null
+++ b/src/lib/j2k_encoder_fastvideo_backend.h
@@ -0,0 +1,36 @@
+#ifndef DCPOMATIC_J2K_ENCODER_FASTVIDEO_BACKEND_H
+#define DCPOMATIC_J2K_ENCODER_FASTVIDEO_BACKEND_H
+
+
+#include "j2k_encoder_backend.h"
+#include <dcp/util.h>
+#include <fastvideo_encoder_j2k.h>
+#include <fastvideo_sdk.h>
+#include <boost/thread.hpp>
+
+
+class J2KEncoderFastvideoBackend : public J2KEncoderBackend
+{
+public:
+ J2KEncoderFastvideoBackend ();
+ ~J2KEncoderFastvideoBackend ();
+
+ std::vector<dcp::Data> encode (std::vector<boost::shared_ptr<DCPVideo> > video);
+
+ int quantity () const {
+ return 16;
+ }
+
+private:
+ void setup (dcp::Size size);
+
+ bool _setup_done;
+ fastImportFromHostHandle_t _adapter;
+ fastDeviceSurfaceBufferHandle_t _src_buffer;
+ fastEncoderJ2kHandle_t _encoder;
+ uint16_t* _xyz_buffer;
+ int _xyz_buffer_stride;
+};
+
+#endif
+