From patchwork Tue Jan 23 08:19:28 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Wu, Tong1" X-Patchwork-Id: 45742 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:120f:b0:199:de12:6fa6 with SMTP id v15csp473523pzf; Tue, 23 Jan 2024 00:21:40 -0800 (PST) X-Google-Smtp-Source: AGHT+IEwAk4eKoGV8YWUGOiV9oafEN65vGoLEX3+yJvfYhvIhfwjVDD515k3brhHUz/1Bc9m1kjB X-Received: by 2002:a17:907:a786:b0:a30:e0d2:ab6f with SMTP id vx6-20020a170907a78600b00a30e0d2ab6fmr5360ejc.248.1705998100245; Tue, 23 Jan 2024 00:21:40 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1705998100; cv=none; d=google.com; s=arc-20160816; b=EbcMmkNCTT8RtggePFlfC02LF00w1PdjGCgr77a6sAEydj3c0VZN3eW7mGEU+r95mT OUJWjnlHXNU9wEnQxo4c0Ip0ExHMNuKWb334Tbj4O5XaPAAazBCa8cO8D6HBjTHJ0bAV J8YDsRgn6zGbBvCmiirMSaBC38Qo2cEJmuvdh8wfVHekTG1TrjBIs3roYOEnqyGu7ea6 mpPmE6ufpqokomEsYFa0czolL3d+x6hg91YVBtyHXAL2wXeIoI9/TvqAR/4IbfhsoB9M jg0fQLN6ZdZj0qmnw+sLbQhJSMqrqgjtY4QdfLNqqYQM/veRwuZQMWGVHHs0Hnemk3dY wB2w== 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=J/8jRCG90uBRe3GxAOGxoUTU7NJdXD/anaIVizJuk9g=; fh=CX/m9qTuMDwrotqtm4RkAOJT6yXlKL2vcfWDitFPXZs=; b=i2G1Cphm9ONYs0qpK7noM7TLb4U/zkb7siGRCvI8BzcK7AaVl4TX2mMbxKYRE1IiVo 3HzeUTw7S9YENwj/X6w3BHPpJYc5jNopyC339qiW40aBlwURsgD7hA5EWdkojlK+pTzk Wdy6kDM9ZzadZOXjVqrj24vRoDGs2Gjw0mnZZmnbIDhl1pXy3gGBlPVcnjpVj4k+Ps5c 0+7T8jVce+wOtUNOVFXXW+t5zDVsdYdWMN9O/Sbsm1g0AP/Dvk9BXor30RM7EYbWXzbj IBmy5iL1bIQ61BHAh0VYdW96rfpgpIPiGfo+pLHaCl4286GbiIAKTl8BRag84ih/66ZB lIkA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@intel.com header.s=Intel header.b=acDjfTPf; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id m22-20020a17090607d600b00a2a23a6ad8dsi11556888ejc.565.2024.01.23.00.21.39; Tue, 23 Jan 2024 00:21:40 -0800 (PST) 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=@intel.com header.s=Intel header.b=acDjfTPf; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2E25468D115; Tue, 23 Jan 2024 10:20:57 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.8]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id CFE3A68D0C8 for ; Tue, 23 Jan 2024 10:20:47 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1705998053; x=1737534053; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=fxE3ypmEr0LpdadgZdGZ3+PAck5skO7Q2foUb/ds02w=; b=acDjfTPfBR8HaU0QNyjYxKfg8EYLPMCeTaCYF2/mlS8Tn4sikj6D+mt8 pshLQbO5LFGp4Dng3oNOZX4xtuomyw1YODtB/4n7D+GF7EJSgVF12gHYu exB/WCttsJ7bqRjkY0gqnjUtDlKbGJQtsklkeRFop40tkSvhz9bRzt0Uq qdGA7OhV2m2a7rl15mIfTtmZhdmQOE+clezQ2HNd1IP3GGDcRSoMHevKp ullH58aWToaInxbl29f9zwUJQlObRAzi0baRLgwbM2+fQ8jqI+ze54mFi ZLR8thADnR6t0dAog2fVkEt4r3Vetu7pv9Rlu/DFQMsX5habYwy1ZSO+A A==; X-IronPort-AV: E=McAfee;i="6600,9927,10961"; a="14967253" X-IronPort-AV: E=Sophos;i="6.05,213,1701158400"; d="scan'208";a="14967253" Received: from fmviesa004.fm.intel.com ([10.60.135.144]) by fmvoesa102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Jan 2024 00:20:43 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.05,213,1701158400"; d="scan'208";a="1591601" Received: from desktop-qn7n0nf.sh.intel.com (HELO localhost.localdomain) ([10.239.160.66]) by fmviesa004.fm.intel.com with ESMTP; 23 Jan 2024 00:20:42 -0800 From: tong1.wu-at-intel.com@ffmpeg.org To: ffmpeg-devel@ffmpeg.org Date: Tue, 23 Jan 2024 16:19:28 +0800 Message-ID: <20240123081932.1574-7-tong1.wu@intel.com> X-Mailer: git-send-email 2.41.0.windows.1 In-Reply-To: <20240123081932.1574-1-tong1.wu@intel.com> References: <20240123081932.1574-1-tong1.wu@intel.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v2 7/9] avutil/hwcontext_d3d12va: add Flags for resource creation 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: Tong Wu Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: kF9fzxFDUP7X From: Tong Wu Flags field is added to support diffferent resource creation. Signed-off-by: Tong Wu --- doc/APIchanges | 3 +++ libavutil/hwcontext_d3d12va.c | 2 +- libavutil/hwcontext_d3d12va.h | 8 ++++++++ libavutil/version.h | 2 +- 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/doc/APIchanges b/doc/APIchanges index e477ed78e0..8bf8bf6154 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -2,6 +2,9 @@ The last version increases of all libraries were on 2023-02-09 API changes, most recent first: +2024-01-xx - xxxxxxxxxx - lavu 58.37.100 - hwcontext_d3d12va.h + Add AVD3D12VAFramesContext.flags + 2023-11-xx - xxxxxxxxxx - lavfi 9.16.100 - buffersink.h buffersrc.h Add av_buffersink_get_colorspace and av_buffersink_get_color_range. Add AVBufferSrcParameters.color_space and AVBufferSrcParameters.color_range. diff --git a/libavutil/hwcontext_d3d12va.c b/libavutil/hwcontext_d3d12va.c index 414dd44290..bcd4b99716 100644 --- a/libavutil/hwcontext_d3d12va.c +++ b/libavutil/hwcontext_d3d12va.c @@ -237,7 +237,7 @@ static AVBufferRef *d3d12va_pool_alloc(void *opaque, size_t size) .Format = hwctx->format, .SampleDesc = {.Count = 1, .Quality = 0 }, .Layout = D3D12_TEXTURE_LAYOUT_UNKNOWN, - .Flags = D3D12_RESOURCE_FLAG_NONE, + .Flags = hwctx->flags, }; frame = av_mallocz(sizeof(AVD3D12VAFrame)); diff --git a/libavutil/hwcontext_d3d12va.h b/libavutil/hwcontext_d3d12va.h index ff06e6f2ef..608dbac97f 100644 --- a/libavutil/hwcontext_d3d12va.h +++ b/libavutil/hwcontext_d3d12va.h @@ -129,6 +129,14 @@ typedef struct AVD3D12VAFramesContext { * If unset, will be automatically set. */ DXGI_FORMAT format; + + /** + * This field is used to specify options for working with resources. + * If unset, this will be D3D12_RESOURCE_FLAG_NONE. + * + * @see: https://learn.microsoft.com/en-us/windows/win32/api/d3d12/ne-d3d12-d3d12_resource_flags. + */ + D3D12_RESOURCE_FLAGS flags; } AVD3D12VAFramesContext; #endif /* AVUTIL_HWCONTEXT_D3D12VA_H */ diff --git a/libavutil/version.h b/libavutil/version.h index 772c4e209c..3ad1a9446c 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -79,7 +79,7 @@ */ #define LIBAVUTIL_VERSION_MAJOR 58 -#define LIBAVUTIL_VERSION_MINOR 36 +#define LIBAVUTIL_VERSION_MINOR 37 #define LIBAVUTIL_VERSION_MICRO 101 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \