summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lib/grok_j2k_encoder_thread.cc2
-rw-r--r--src/lib/grok_j2k_encoder_thread.h5
2 files changed, 7 insertions, 0 deletions
diff --git a/src/lib/grok_j2k_encoder_thread.cc b/src/lib/grok_j2k_encoder_thread.cc
index f8bfddf58..6975d9221 100644
--- a/src/lib/grok_j2k_encoder_thread.cc
+++ b/src/lib/grok_j2k_encoder_thread.cc
@@ -39,6 +39,7 @@ using std::shared_ptr;
GrokJ2KEncoderThread::GrokJ2KEncoderThread(J2KEncoder& encoder, grk_plugin::GrokContext* context)
: J2KEncoderThread(encoder)
, _context(context)
+ , _errors(0)
{
}
@@ -55,6 +56,7 @@ try
dcp::ScopeGuard frame_guard([this, &frame]() {
LOG_ERROR("Failed to schedule encode of %1 using grok", frame.index());
+ _errors++;
_encoder.retry(frame);
});
diff --git a/src/lib/grok_j2k_encoder_thread.h b/src/lib/grok_j2k_encoder_thread.h
index 5301e1670..b9375f23a 100644
--- a/src/lib/grok_j2k_encoder_thread.h
+++ b/src/lib/grok_j2k_encoder_thread.h
@@ -35,7 +35,12 @@ public:
void run() override;
+ int errors() const {
+ return _errors.load();
+ }
+
private:
grk_plugin::GrokContext* _context;
+ std::atomic<int> _errors;
};