From patchwork Fri May 28 09:24:46 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shubhanshu Saxena X-Patchwork-Id: 27969 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:b214:0:0:0:0:0 with SMTP id b20csp372649iof; Fri, 28 May 2021 02:33:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx04V0RcbCxGuUOywrG8KC6G93PI2nudbzubX7jHczxeqkGU03YqqldsJZaU1qaIvB3K5EA X-Received: by 2002:a50:ff15:: with SMTP id a21mr8871934edu.103.1622194428102; Fri, 28 May 2021 02:33:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1622194428; cv=none; d=google.com; s=arc-20160816; b=PmqJOqFEEPEfs/7Y/4Z32mkJ39vHDa5PoXdn5eOGpF20MxdbYXv1XJ1ZUoz62HqcG5 pt+bqB7eZ1Zc8wLARxQ+wOa0JlW4Up1rOhd2Oqnc5YPAbyPbr8iuii3vkE4QkZkSqa36 v9rUvZK43vx0bnwoq5bnZIeHu/Hn0t4wJfNzrM3C3uSRk7C6BIH47EkGiu5rFUnmS8IC zUrO5qG6PsmLBmfdPxCuWscXuZ9hP26TjZKjmSqtvV1hZbtWGS2wIB1Z7IqO6uTWLaFR //S7VvXbhVa81wxW+UvJRGQxcp4YgI0te4aOF6j+jTwNSH/Q01SLilCQZjsMx4x0v8r4 RBAw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:delivered-to; bh=CCaIVmiHRqb3kTamUpgAh59WtS2XXtnqUQZx5GjaVbY=; b=JMgnKGKvuX3YYfJ3tcT6mSEfXKqYdStMqLOH1osL8lEJhGKxnAYz3dHb0el9Vag1pS 3r0SFUUSYFRpSfxoxHO/J3QT+8muKbhJIOY8B9kvKfNQlPhMkiHwzvDhRIATBqKlmcVH P4RUizT9Nt30oKAZHzk1QXAFb2pIgNG4rQ91wFQ3p/PIHAOIFLTnXK/ZeRENAzIlPIr1 DURFpJWvIb2GmHYJ0VSRJJpBPm4+PHcjMSLkYvV+KivpUmF1/oPGSMpqNtVVg5GxB7Kp IKFc++07tUjBvcwhsYtweSGwwziDxVq6iyF0kwKObtP9/4YkEH35VYijdC2b0K6Wuebk 5HBw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=TzRc+xFh; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id z13si4199392edb.480.2021.05.28.02.33.47; Fri, 28 May 2021 02:33:48 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=TzRc+xFh; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id D80C668A1A7; Fri, 28 May 2021 12:33:44 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qv1-f43.google.com (mail-qv1-f43.google.com [209.85.219.43]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 30EC4680BE5 for ; Fri, 28 May 2021 12:33:38 +0300 (EEST) Received: by mail-qv1-f43.google.com with SMTP id h7so1527789qvs.12 for ; Fri, 28 May 2021 02:33:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=4gxJawNDd2iWOL99+S3dGdz3E8dlMirBOuo6hxiai7Q=; b=TzRc+xFhllt/VmcQwjQSRvfiLKGUSzdpiolC/Y6NCG+dK612gYAZ3iU+dT2TlB9bZE sFOxQzXbKThKBRrb6uaTgnvRzFAlb7hzYQ1HIfbLX8xGIjeJDn27vi5pQd8G9CTaL13l 2FN6q487TfS4FZjWGPzFLk7jrQilPJRSCdJZEhPw2wE6uOscHZ3WwfMohUTMs/NECuSY ob58mX8rh3GsTOSSdL5EKEFmQvecw/QPFBek3BWLUmJt1j5WmTHn3V8Dov5yHaHCXxss 2KkUEcnvcLuhY8UJO5DN8GyjObDHSyeIIdsSSsaELRY9zCyLjjDItd0vNqh7TBANjjD/ KCGw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=4gxJawNDd2iWOL99+S3dGdz3E8dlMirBOuo6hxiai7Q=; b=lrm6yxk6XrER24sNYxPIKxqTpdqDDBg00jjvX0dXytmkeBAOVxaLV78vtfi+OOlMQr 6arUopoFcSALE3nBuIHhaFHrAYJVJm0miyVT/c0izJVvYT2XzMcO9PyBik3vtHejuUXM +dFI2DgLEa6LmoHd/Ub1ho7WhLJ+dkH4DuUVF0mpuUAJwyp1F38o77l12jUDd5LreN6+ xBwhMfICCKyxrrQYFLwH088EBMUlj1gU3mySzquM3USucYJxupvNKpS/leF9TOjbm/UB spJcjHgsa5bTq6XEcwYjuj/wj95yNmsciYLWiz5IBUsxtdI54anrvqn2Hm3wsBByIRrz evog== X-Gm-Message-State: AOAM532roI4kVOoMaCYr/dh+D74T8YtpkUDw+TXOjG8YKYQL4LkTiLBo YJxsrVrqp1C4s9o2vSKWAmwmBLfyS+ev3g== X-Received: by 2002:a17:902:d64e:b029:ef:8b85:d299 with SMTP id y14-20020a170902d64eb02900ef8b85d299mr7163816plh.27.1622193949762; Fri, 28 May 2021 02:25:49 -0700 (PDT) Received: from Pavilion-x360.bbrouter ([103.133.121.241]) by smtp.googlemail.com with ESMTPSA id q24sm3846892pgk.32.2021.05.28.02.25.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 May 2021 02:25:49 -0700 (PDT) From: Shubhanshu Saxena To: ffmpeg-devel@ffmpeg.org Date: Fri, 28 May 2021 14:54:46 +0530 Message-Id: <20210528092454.31874-2-shubhanshu.e01@gmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210528092454.31874-1-shubhanshu.e01@gmail.com> References: <20210528092454.31874-1-shubhanshu.e01@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 02/10] lavfi/dnn: Convert output_name to char** in TaskItem X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Shubhanshu Saxena Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: DhwVdVckf2w9 Convert output_name to char **output_names in TaskItem and use it as a pointer to array of output names in the DNN backend. Signed-off-by: Shubhanshu Saxena --- libavfilter/dnn/dnn_backend_common.h | 2 +- libavfilter/dnn/dnn_backend_openvino.c | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/libavfilter/dnn/dnn_backend_common.h b/libavfilter/dnn/dnn_backend_common.h index 0c043e51f0..f76a05026d 100644 --- a/libavfilter/dnn/dnn_backend_common.h +++ b/libavfilter/dnn/dnn_backend_common.h @@ -32,7 +32,7 @@ typedef struct TaskItem { AVFrame *in_frame; AVFrame *out_frame; const char *input_name; - const char *output_name; + const char **output_names; int async; int do_ioproc; uint32_t inference_todo; diff --git a/libavfilter/dnn/dnn_backend_openvino.c b/libavfilter/dnn/dnn_backend_openvino.c index a84370d689..0f3b235820 100644 --- a/libavfilter/dnn/dnn_backend_openvino.c +++ b/libavfilter/dnn/dnn_backend_openvino.c @@ -208,7 +208,7 @@ static void infer_completion_callback(void *args) DNNData output; OVContext *ctx = &ov_model->ctx; - status = ie_infer_request_get_blob(request->infer_request, task->output_name, &output_blob); + status = ie_infer_request_get_blob(request->infer_request, task->output_names[0], &output_blob); if (status != OK) { //incorrect output name char *model_output_name = NULL; @@ -222,7 +222,7 @@ static void infer_completion_callback(void *args) } av_log(ctx, AV_LOG_ERROR, "output \"%s\" may not correct, all output(s) are: \"%s\"\n", - task->output_name, all_output_names); + task->output_names[0], all_output_names); return; } @@ -676,7 +676,7 @@ static DNNReturnType get_output_ov(void *model, const char *input_name, int inpu task.async = 0; task.input_name = input_name; task.in_frame = in_frame; - task.output_name = output_name; + task.output_names = &output_name; task.out_frame = out_frame; task.model = ov_model; @@ -796,7 +796,7 @@ DNNReturnType ff_dnn_execute_model_ov(const DNNModel *model, DNNExecBaseParams * task.async = 0; task.input_name = exec_params->input_name; task.in_frame = exec_params->in_frame; - task.output_name = exec_params->output_names[0]; + task.output_names = &exec_params->output_names[0]; task.out_frame = exec_params->out_frame ? exec_params->out_frame : exec_params->in_frame; task.model = ov_model; @@ -843,7 +843,7 @@ DNNReturnType ff_dnn_execute_model_async_ov(const DNNModel *model, DNNExecBasePa task->async = 1; task->input_name = exec_params->input_name; task->in_frame = exec_params->in_frame; - task->output_name = exec_params->output_names[0]; + task->output_names = &exec_params->output_names[0]; task->out_frame = exec_params->out_frame ? exec_params->out_frame : exec_params->in_frame; task->model = ov_model; if (ff_queue_push_back(ov_model->task_queue, task) < 0) {