mirror of https://git.ffmpeg.org/ffmpeg.git
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: Rafik Saliev <rafik.f.saliev@intel.com>
This commit is contained in:
parent
10a56363a7
commit
8ad988ac37
|
@ -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);
|
||||
|
|
Loading…
Reference in New Issue