Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2019-05-17 20:00:47 +0300
committerPaul B Mahol <onemda@gmail.com>2019-05-17 20:10:12 +0300
commit96c79d4e1fd87dbedfd70ed876ee257ddda2ba90 (patch)
tree9fd468bc96e2ee5d9f409b4fd4547092750dc758 /libavfilter/vf_ocr.c
parent3f31726994f64801c12349471d1bf94569b8329d (diff)
avfilter/vf_ocr: also export confidence of result
Diffstat (limited to 'libavfilter/vf_ocr.c')
-rw-r--r--libavfilter/vf_ocr.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/libavfilter/vf_ocr.c b/libavfilter/vf_ocr.c
index abfff49438..d5f76059b7 100644
--- a/libavfilter/vf_ocr.c
+++ b/libavfilter/vf_ocr.c
@@ -100,11 +100,21 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in)
AVFilterLink *outlink = ctx->outputs[0];
OCRContext *s = ctx->priv;
char *result;
+ int *confs;
result = TessBaseAPIRect(s->tess, in->data[0], 1,
in->linesize[0], 0, 0, in->width, in->height);
+ confs = TessBaseAPIAllWordConfidences(s->tess);
av_dict_set(metadata, "lavfi.ocr.text", result, 0);
+ for (int i = 0; confs[i] != -1; i++) {
+ char number[256];
+
+ snprintf(number, sizeof(number), "%d ", confs[i]);
+ av_dict_set(metadata, "lavfi.ocr.confidence", number, AV_DICT_APPEND);
+ }
+
TessDeleteText(result);
+ TessDeleteIntArray(confs);
return ff_filter_frame(outlink, in);
}