summaryrefslogtreecommitdiff
path: root/src/lib/j2k_encoder.h
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2026-02-16 23:39:22 +0100
committerCarl Hetherington <cth@carlh.net>2026-02-16 23:39:22 +0100
commit8b0241e4825c1ff50b5909e356a9bc2522775df6 (patch)
tree165f679467d72e49d5957990bd4b374d5f55a69a /src/lib/j2k_encoder.h
parentd056ab7d3d202506e64f2ea1c143b286df4c9cc1 (diff)
Sort-of works.kakadu
Diffstat (limited to 'src/lib/j2k_encoder.h')
-rw-r--r--src/lib/j2k_encoder.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/lib/j2k_encoder.h b/src/lib/j2k_encoder.h
index 18f7be9e4..130214c2d 100644
--- a/src/lib/j2k_encoder.h
+++ b/src/lib/j2k_encoder.h
@@ -33,6 +33,9 @@
#include "event_history.h"
#include "exception_store.h"
#include "j2k_encoder_thread.h"
+#ifdef DCPOMATIC_KAKADU
+#include "kakadu.h"
+#endif
#include "writer.h"
#include "video_encoder.h"
#include <dcp/warnings.h>
@@ -94,6 +97,12 @@ public:
void retry(DCPVideo frame);
void write(std::shared_ptr<const dcp::Data> data, int index, Eyes eyes);
+#ifdef DCPOMATIC_KAKADU
+ KakaduSharedMemory* kakadu_shared_memory() {
+ return _kakadu_shared_memory;
+ }
+#endif
+
private:
friend struct ::local_threads_created_and_destroyed;
friend struct ::remote_threads_created_and_destroyed;
@@ -101,7 +110,7 @@ private:
void frame_done();
void servers_list_changed();
- void remake_threads(int openjpeg, int gpu, std::list<EncodeServerDescription> servers);
+ void remake_threads(int openjpeg, int kakadu, int gpu, std::list<EncodeServerDescription> servers);
void terminate_threads();
boost::mutex _threads_mutex;
@@ -126,6 +135,10 @@ private:
std::atomic<bool> _give_up;
#endif
+#ifdef DCPOMATIC_KAKADU
+ KakaduSharedMemory* _kakadu_shared_memory = nullptr;
+#endif
+
bool _ending = false;
};