From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 711A448112 for ; Fri, 10 Nov 2023 02:20:17 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5B9E168CBE0; Fri, 10 Nov 2023 04:20:14 +0200 (EET) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.7]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A3AB668CBA0 for ; Fri, 10 Nov 2023 04:20:07 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1699582813; x=1731118813; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=9IQkWvx/Z5rC9prfg3kjuPjU1Fs2G4zEq0E3ILJyW9k=; b=amQdoN0PSxmr8KLP2Cjyu2LcfJuue5hPG7/BtDDlrPNmafw/qC4zgDFC 6qQ9ZpSFtZcaK39AQr3m0JhInMGlnYh4IFiLVSdFeuxpcUarI4ttY8gs3 xN70AFEHqL48aecv7wABt8GGoa7L6004xQeR6c5vnpFxVUAlU7hopyXmG KAl/dCPboohqE7gkS8xba/jkDxDPfihtNkuwzwSINmh8xI6+Mwmi89R6E tjGAF7x6lH1Ys+dyELv4RfsgtBmgIEfOxollPGKynM7wrGhLqogK4WojE kAQizzsMADBw+YycEHccQKxKnTy04myixxl6RGvJv5PaGaALB8FpA/O9q w==; X-IronPort-AV: E=McAfee;i="6600,9927,10889"; a="11665195" X-IronPort-AV: E=Sophos;i="6.03,291,1694761200"; d="scan'208";a="11665195" Received: from fmviesa001.fm.intel.com ([10.60.135.141]) by fmvoesa101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Nov 2023 18:20:05 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.03,291,1694761200"; d="scan'208";a="11730477" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmviesa001.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 09 Nov 2023 18:20:04 -0800 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.34; Thu, 9 Nov 2023 18:20:04 -0800 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.34; Thu, 9 Nov 2023 18:20:04 -0800 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.34 via Frontend Transport; Thu, 9 Nov 2023 18:20:04 -0800 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.169) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.34; Thu, 9 Nov 2023 18:20:03 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Z90a3xxrnnJG8q3O/s8RJhVe3OOW3Ye+ySZ1mDr19PSZIU3kfRh/bhN7mamEDfjZoU/8KyLU520n8nGXpbCZ9HvC4syhi9cER09EkWU34CR7Mm8U+H6RDa/tMyp2lVDgdYO9xXc316rwz8cEKo/PkpK9HdjOUhwdMYFui7SX7AyHCY2lz4S8Y/6J2fRsKaWBDQLagQB8TmDIbtAaThVytQ/C6ogxA2IKOmgf0ICd4v6Akv6EUU5sSEJMSmf4Huczez3rhWzfEZTIZcLSrOV41ZDjD+7+Hu2sqMbWlA8t7e5QlFC0hplBvGBwFYYtTE4H93zaHwyXHD/HexzFnxmZmQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=jvEhV/i7FB39c0ye4MoT0fmyJ+5TJ+oxbxgkuJd6qOY=; b=kWO/tmOhM6cqn97uo7f0xHYsTFh21OisZb1Ppe5plpOhOtFZnpVB5q1B4ccINWlypdfNvjbdcxP+aJmrtrvBuhsYfVlZz+1UQARAdxqmtUbWPLV7T7d2J7EDPhm7F3tIbiAl3DSnMyjKDxyk6FWL0ALYtAzEAaaK4no5yt0SJTnFa51lUhi6Z5tjHU/oxWrMlGcMOxKZcaZuCC7u7rQSoU1zWFTwR7KlOMTHUSwjrBoKQVkGWl4zTtCxosCnCD7SQkwV/h6dsOtTTU2M/y/cFV7gwkUO4h4dG61D6xDiYi6eyBojxGFb9kj0p7IQCUg2y0+QdFX+2MuYd0fwg5VtpA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from SN6PR11MB2990.namprd11.prod.outlook.com (2603:10b6:805:cf::21) by PH0PR11MB5094.namprd11.prod.outlook.com (2603:10b6:510:3f::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.28; Fri, 10 Nov 2023 02:20:01 +0000 Received: from SN6PR11MB2990.namprd11.prod.outlook.com ([fe80::ad9a:2554:d386:75e5]) by SN6PR11MB2990.namprd11.prod.outlook.com ([fe80::ad9a:2554:d386:75e5%3]) with mapi id 15.20.6954.028; Fri, 10 Nov 2023 02:20:01 +0000 From: "Wu, Tong1" To: FFmpeg development discussions and patches Thread-Topic: [FFmpeg-devel] [PATCH v9 1/9] libavutil: add hwcontext_d3d12va and AV_PIX_FMT_D3D12 Thread-Index: AQHaEd/OjE6SdP8M30ulow6jZ1g6VbBwQsYAgAKR3jA= Date: Fri, 10 Nov 2023 02:20:01 +0000 Message-ID: References: <20231108010552.52-1-tong1.wu@intel.com> <4b6393f5-c9a2-47d1-811a-ece7694d1dcc@betaapp.fastmail.com> In-Reply-To: <4b6393f5-c9a2-47d1-811a-ece7694d1dcc@betaapp.fastmail.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SN6PR11MB2990:EE_|PH0PR11MB5094:EE_ x-ms-office365-filtering-correlation-id: 751016d5-1bfd-4202-5d5d-08dbe1938b07 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: G4Qz3u1jegy3S7Ne75LZWOe+wQ/7oAPegGteAi8snFIRq9E71Ztl/pat2peu9y337R+iKlrXaHyd84alu9bOmTeY5Ujc+KTj6auBhphcu0DJjjA4w5KhKyTOo/Q0ZuMdzfqWvuDV8d3WVJ2kzhp2T+a72luXU+vGX48X3WlGFKMVgE0pCm/0Kc8g1uSBbyLeQPU3mcotQDn7/s5xymPsu8z7rKLeWBYYsfYkIYiouSvLdlVFC54cHtPSWQQH4UtIC510IpvTlhb64NgecBCxvsxXKnffbRaFU7+etbTQpw+ysqJ2FspvEFCHJIYF/5w61IqfGbWvZ9b0ZJO34TegjST4nD/MAJsjeWqYVRMf89GPtKrMfqIOKymtSj1bx3/qE9M3umG8s78wDNmtwwIfCkPNEHOPOuUTSLv9ameihFQP9pqdS7l+2hSa7LZ7nufEaB79JKk2alR7pFwhbDV9dyO6ppetb2v8ZT+VRIY8ZUFSBKZvH/tvNOXyVJec14KgAsuZ8ykDEwktBJnlrLbu7adrmNXCbqrTFFOPpDeEzp7+cY+fufRDnEKYX8VDhRoMlVOTh5PhjBDwqfXdT8vwl1yKCz/Rj1blB62TFfozFS1ppbLp3/ZBEkpeweTWGZOB x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN6PR11MB2990.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(396003)(136003)(366004)(346002)(376002)(39860400002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(38100700002)(41300700001)(55016003)(2906002)(5660300002)(6916009)(8936002)(966005)(66556008)(9686003)(316002)(64756008)(66476007)(33656002)(86362001)(66899024)(52536014)(66446008)(8676002)(76116006)(66946007)(83380400001)(26005)(82960400001)(38070700009)(122000001)(6506007)(71200400001)(7696005)(478600001)(2004002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?ICGs7gYcxNohrFUwT0nLH5kqq8QKJjuoKidMLu7mKSjIjQbrz2qyFEVEeTRW?= =?us-ascii?Q?XT5uxn7eQceSoxmpNNocyNbqeUIlu5ZPD4rCxNbaXyqy18ZixeXaunWDhclS?= =?us-ascii?Q?LHZlDiD3pCCOAJv0kTFcF1H4nVvr/I+iO1FMWV5+njYxEFJmFDZVGsIFDt2E?= =?us-ascii?Q?PH8IREcWap8NyUralF9nOIAw3wj/bIFGXhxFdx53OlSaojvScNmM8oLoZFKb?= =?us-ascii?Q?7Cxz2PbfmHuqGHNRZKb6/DgwyywwQDZQJD6KObCJHwneiqrbcopRJTKFVaVg?= =?us-ascii?Q?dz3oMsIu5kPaLwhMKQkgYsgEjJXtB6srDFenFTN8PS4BTp+S1FTZ4LsFfIK6?= =?us-ascii?Q?8Xju/MSpybmQjLUlRv6eUlj/XqV5ITV48rkjxwb15KNNR6YPMV3OX8uAF0Pk?= =?us-ascii?Q?g7hJdvLRm25+dWtRmjCCRmnuHuI3AMukP2TmBKaYzdMa7XrKvlwJsyuFAUqY?= =?us-ascii?Q?z6odTx1GSUkfXXY2g1bBFuCGN5hXA9azc+HJcv91wBv8b7blihmsRvfV7rjw?= =?us-ascii?Q?5kpt0BKECa+VWIKTX/rzcW49Uj5vw6DisY7lOwrSqTo19IA6/6j3wnV4KHPP?= =?us-ascii?Q?IeClBtAogfE7HaYxjrZD61cXeYI5tPQJms5osnbrPzzHINtMiBDLhkJkD3X1?= =?us-ascii?Q?BScXHyUOwc7/H9fb1dttonq0g7kGsA8gVm7o2g0uWQiyu/NrfKF3SiiMUdH7?= =?us-ascii?Q?ArG+n3oy9g3QM0OGnI4aQCH8gOF0T9628HptY5icXeMbH+iHOSW76dh9jp73?= =?us-ascii?Q?nG12cPnWQnVRq6c1U1tMp+2C2JQK/fhINHz6q6dvQIYoenyyjH8vgEMkfvSU?= =?us-ascii?Q?ikoOLZm0silYFTOMl9WxaHSkTWorcCgAxSLHNmjhnEPt3+PGWWRH61GJimAH?= =?us-ascii?Q?1MmOOytgq7me2CX/bq9nqbWqSc1V1KDLUYcCCXYvAbkSAF5FFfS9lZU1JuKd?= =?us-ascii?Q?j4K4Mm9skQwQ7p7+G7E8hFqA7zZLBRXANMVnuxcSqa+CKhEjcGcHfgSyX7KR?= =?us-ascii?Q?gqosZ7+SV0a68TH4Q2ngFhe4TqOI9+bTXdWYuUmWs0GJRfTxsoupdPyEu8Pn?= =?us-ascii?Q?nQZkB+kYh4B6NhHxz0ZPMsIEtVeJuy8dYUUYSvgCFETzs5sAvDMSwpqgmFtC?= =?us-ascii?Q?XuhlN8bUrDyn/CpmdYK5blifxck3dkhudJ9xqw/+u+19wN8spkaGJEq3JMlc?= =?us-ascii?Q?l64R16qLzPImT/tUY8yamP6fTrGRmcg8n6eHSotDsGIe1gULZNdQD1cmHqIQ?= =?us-ascii?Q?/9UFmYqy3lhcosycJSJnyOOB8/mKLBSTJXqIKnCaR8Um1xFhqxHkUHnEcKt3?= =?us-ascii?Q?OruukTAqDgxqJl3Kxtj0JwNtFhZwHE0ukldniUQ5v9eSnz3StNVqFVsq1X/J?= =?us-ascii?Q?mVe1gvgiPmbM++evSN9/JQ0Gw2gdYz1GDJWQpq4XvG1d7R3Z3gdpeh1acemN?= =?us-ascii?Q?HCjbHlCvqLtG0vuJfV2soQ35hK+iXcvkOAV1oRrgDKG/tViUGcdCfdm5Vpxk?= =?us-ascii?Q?Vj3fT4xhHB24hJUveIdhKk85ZCJxlu9WOZmMOgjoi6x0hwvoCtmajojS0g0d?= =?us-ascii?Q?kP+nYWUkUFqlKk7q8L6ERWx3I/xC/bW4e8IO3vgm?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN6PR11MB2990.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 751016d5-1bfd-4202-5d5d-08dbe1938b07 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Nov 2023 02:20:01.1657 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: aPK5dM9xFm6F1ugzNMcpfP+XyOW5s55+7KPBWwPfBeHHlS+HZIzQ44xuTm16YkQBBVeVw2j1nwMo+JKU+7JZBw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5094 X-OriginatorOrg: intel.com Subject: Re: [FFmpeg-devel] [PATCH v9 1/9] libavutil: add hwcontext_d3d12va and AV_PIX_FMT_D3D12 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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: >-----Original Message----- >From: ffmpeg-devel On Behalf Of Jean- >Baptiste Kempf >Sent: Wednesday, November 8, 2023 7:04 PM >To: fmpeg-devel >Subject: Re: [FFmpeg-devel] [PATCH v9 1/9] libavutil: add hwcontext_d3d12va >and AV_PIX_FMT_D3D12 > >Hello, > >On Wed, 8 Nov 2023, at 02:05, Tong Wu wrote: >> +/** >> + * @brief This struct is used to sync d3d12 execution >> + * >> + */ >> +typedef struct AVD3D12VASyncContext { >> + /** >> + * D3D12 fence object >> + */ >> + ID3D12Fence *fence; >> + >> + /** >> + * A handle to the event object >> + */ >> + HANDLE event; > >Sorry, but which event object? I would guess it's the ID3D12Fence::Signal, but >I'm not even sure. > >I think this needs a bit more doc and explanations. > Hi there. Yes it's the event that's raised when the fence reaches a certain value. I will put more details in the doc. Thanks. >> + >> + /** >> + * The fence value used for sync >> + */ >> + uint64_t fence_value; >> +} AVD3D12VASyncContext; >> + >> +/** >> + * @brief D3D12VA frame descriptor for pool allocation. >> + * >> + */ >> +typedef struct AVD3D12VAFrame { >> + /** >> + * The texture in which the frame is located. The reference count >> is >> + * managed by the AVBufferRef, and destroying the reference will >> release >> + * the interface. >> + */ >> + ID3D12Resource *texture; >> + >> + /** >> + * The index into the array texture element representing the frame >> + */ >> + intptr_t index; >> + >> + /** >> + * The sync context for the texture >> + * >> + * Use av_d3d12va_wait_idle(sync_ctx) to ensure the decoding or >> encoding have been finised >> + * @see: >> https://learn.microsoft.com/en-us/windows/win32/medfound/direct3d-12- >video-overview#directx-12-fences >> + */ >> + AVD3D12VASyncContext *sync_ctx; >> +} AVD3D12VAFrame; >> + >> +/** >> + * @brief This struct is allocated as AVHWFramesContext.hwctx >> + * >> + */ >> +typedef struct AVD3D12VAFramesContext { >> + /** >> + * This field is not able to be user-allocated at the present. >> + */ >> + AVD3D12VAFrame *texture_infos; >> +} AVD3D12VAFramesContext; >> + >> +/** >> + * @brief Map sw pixel format to d3d12 format >> + * >> + * @return d3d12 specified format >> + */ >> +DXGI_FORMAT av_d3d12va_map_sw_to_hw_format(enum AVPixelFormat >pix_fmt); >> + >> +/** >> + * @brief Allocate an AVD3D12VASyncContext >> + * >> + * @return Error code (ret < 0 if failed) >> + */ >> +int av_d3d12va_sync_context_alloc(AVD3D12VADeviceContext *ctx, >> AVD3D12VASyncContext **sync_ctx); >> + >> +/** >> + * @brief Free an AVD3D12VASyncContext >> + */ >> +void av_d3d12va_sync_context_free(AVD3D12VASyncContext **sync_ctx); >> + >> +#endif /* AVUTIL_HWCONTEXT_D3D12VA_H */ >> diff --git a/libavutil/hwcontext_d3d12va_internal.h >> b/libavutil/hwcontext_d3d12va_internal.h >> new file mode 100644 >> index 0000000000..bfd89b3545 >> --- /dev/null >> +++ b/libavutil/hwcontext_d3d12va_internal.h >> @@ -0,0 +1,59 @@ >> +/* >> + * Direct3D 12 HW acceleration. >> + * >> + * copyright (c) 2022-2023 Wu Jianhua >> + * >> + * This file is part of FFmpeg. >> + * >> + * FFmpeg is free software; you can redistribute it and/or >> + * modify it under the terms of the GNU Lesser General Public >> + * License as published by the Free Software Foundation; either >> + * version 2.1 of the License, or (at your option) any later version. >> + * >> + * FFmpeg is distributed in the hope that it will be useful, >> + * but WITHOUT ANY WARRANTY; without even the implied warranty of >> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >GNU >> + * Lesser General Public License for more details. >> + * >> + * You should have received a copy of the GNU Lesser General Public >> + * License along with FFmpeg; if not, write to the Free Software >> + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA >> 02110-1301 USA >> + */ >> + >> +#ifndef AVUTIL_HWCONTEXT_D3D12VA_INTERNAL_H >> +#define AVUTIL_HWCONTEXT_D3D12VA_INTERNAL_H >> + >> +/** >> + * @def COBJMACROS >> + * >> + * @brief Enable C style interface for D3D12 >> + */ >> +#ifndef COBJMACROS >> +#define COBJMACROS >> +#endif >> + >> +/** >> + * @def DX_CHECK >> + * >> + * @brief A check macro used by D3D12 functions highly frequently >> + */ >> +#define DX_CHECK(hr) \ >> + do { \ >> + if (FAILED(hr)) \ >> + goto fail; \ >> + } while (0) >> + >> +/** >> + * @def D3D12_OBJECT_RELEASE >> + * >> + * @brief A release macro used by D3D12 objects highly frequently >> + */ >> +#define D3D12_OBJECT_RELEASE(pInterface) \ >> + do { \ >> + if (pInterface) { \ >> + IUnknown_Release((IUnknown *)pInterface); \ >> + pInterface = NULL; \ >> + } \ >> + } while (0) >> + >> +#endif /* AVUTIL_HWCONTEXT_D3D12VA_INTERNAL_H */ >> \ No newline at end of file >> diff --git a/libavutil/hwcontext_internal.h >> b/libavutil/hwcontext_internal.h >> index e6266494ac..4df516ee6a 100644 >> --- a/libavutil/hwcontext_internal.h >> +++ b/libavutil/hwcontext_internal.h >> @@ -165,6 +165,7 @@ int ff_hwframe_map_replace(AVFrame *dst, const >> AVFrame *src); >> >> extern const HWContextType ff_hwcontext_type_cuda; >> extern const HWContextType ff_hwcontext_type_d3d11va; >> +extern const HWContextType ff_hwcontext_type_d3d12va; >> extern const HWContextType ff_hwcontext_type_drm; >> extern const HWContextType ff_hwcontext_type_dxva2; >> extern const HWContextType ff_hwcontext_type_opencl; >> diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c >> index 4e4a63e287..0db4167934 100644 >> --- a/libavutil/pixdesc.c >> +++ b/libavutil/pixdesc.c >> @@ -2311,6 +2311,10 @@ static const AVPixFmtDescriptor >> av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { >> .name = "d3d11", >> .flags = AV_PIX_FMT_FLAG_HWACCEL, >> }, >> + [AV_PIX_FMT_D3D12] = { >> + .name = "d3d12", >> + .flags = AV_PIX_FMT_FLAG_HWACCEL, >> + }, >> [AV_PIX_FMT_GBRPF32BE] = { >> .name = "gbrpf32be", >> .nb_components = 3, >> diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h >> index a26c72d56b..58f9ad28bd 100644 >> --- a/libavutil/pixfmt.h >> +++ b/libavutil/pixfmt.h >> @@ -429,6 +429,13 @@ enum AVPixelFormat { >> AV_PIX_FMT_GBRAP14BE, ///< planar GBR 4:4:4:4 56bpp, big-endian >> AV_PIX_FMT_GBRAP14LE, ///< planar GBR 4:4:4:4 56bpp, little-endian >> >> + /** >> + * Hardware surfaces for Direct3D 12. >> + * >> + * data[0] points to an AVD3D12VAFrame >> + */ >> + AV_PIX_FMT_D3D12, >> + >> AV_PIX_FMT_NB ///< number of pixel formats, DO NOT USE >> THIS if you want to link with shared libav* because the number of >> formats might differ between versions >> }; >> >> diff --git a/libavutil/tests/hwdevice.c b/libavutil/tests/hwdevice.c >> index c57586613a..9d7964f9ee 100644 >> --- a/libavutil/tests/hwdevice.c >> +++ b/libavutil/tests/hwdevice.c >> @@ -137,6 +137,8 @@ static const struct { >> { "0", "1", "2" } }, >> { AV_HWDEVICE_TYPE_D3D11VA, >> { "0", "1", "2" } }, >> + { AV_HWDEVICE_TYPE_D3D12VA, >> + { "0", "1", "2" } }, >> { AV_HWDEVICE_TYPE_OPENCL, >> { "0.0", "0.1", "1.0", "1.1" } }, >> { AV_HWDEVICE_TYPE_VAAPI, >> diff --git a/libavutil/version.h b/libavutil/version.h >> index 589a42b0fa..c5fa7c3692 100644 >> --- a/libavutil/version.h >> +++ b/libavutil/version.h >> @@ -79,7 +79,7 @@ >> */ >> >> #define LIBAVUTIL_VERSION_MAJOR 58 >> -#define LIBAVUTIL_VERSION_MINOR 31 >> +#define LIBAVUTIL_VERSION_MINOR 32 >> #define LIBAVUTIL_VERSION_MICRO 100 >> >> #define LIBAVUTIL_VERSION_INT >AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ >> -- >> 2.41.0.windows.1 >> >> _______________________________________________ >> ffmpeg-devel mailing list >> ffmpeg-devel@ffmpeg.org >> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel >> >> To unsubscribe, visit link above, or email >> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". > >-- >Jean-Baptiste Kempf - President >+33 672 704 734 >_______________________________________________ >ffmpeg-devel mailing list >ffmpeg-devel@ffmpeg.org >https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > >To unsubscribe, visit link above, or email >ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".