Commit 8ad988ac authored by Saliev, Rafik F's avatar Saliev, Rafik F Committed by Guo Yejun

libavfilter/dnn: fix openvino async mode

Bugfix: The OpenVino DNN backend in the 'async' mode sets
'task->inference_done' to 'complete' prior to data copy from
OpenVino output buffer to task's output frame.
This order causes task destroy in ff_dnn_get_result_common()
prior to model output processing.
Signed-off-by: 's avatarRafik Saliev <rafik.f.saliev@intel.com>
parent 10a56363
......@@ -244,7 +244,6 @@ static void infer_completion_callback(void *args)
av_assert0(request->lltask_count >= 1);
for (int i = 0; i < request->lltask_count; ++i) {
task = request->lltasks[i]->task;
task->inference_done++;
switch (ov_model->model->func_type) {
case DFT_PROCESS_FRAME:
......@@ -278,6 +277,7 @@ static void infer_completion_callback(void *args)
break;
}
task->inference_done++;
av_freep(&request->lltasks[i]);
output.data = (uint8_t *)output.data
+ output.width * output.height * output.channels * get_datatype_size(output.dt);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment