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 B8F9A48660 for ; Wed, 15 May 2024 10:14:38 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CE29368D6B5; Wed, 15 May 2024 13:14:27 +0300 (EEST) Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C6E4E68D294 for ; Wed, 15 May 2024 13:14:18 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1715768064; x=1747304064; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=jGVA46n1mIsWeKx0ZXqiHC5wkjs8N6gNqd/mbbCDNyU=; b=HAt3gXh4zqAQNiX0DufbaZUWyrILke82S1qKoTnCR6pz88J0OEaQ087L 6T3fQDRaT1xGIurUL60sFTi6FidSB5ngD+EpBHG4vyAN2Wtg/pe4lyyxR 1N0FcPE3OC83bZR9YKJbqm6SntyE0u+CxtiLf8aVyJ1eeu37Ec2fneh2t EcBNFwS5DDy3BIkj6+4Rx81e6vW7IrkM/m0ZM5h4CrHOIgJbIU6gfwpqx BktHLrOOKWDqj+jKNjAnJR5viKLnWLlMLye1ao4D0kXUQg9THWsk30Wnf 7LCJ7V/M/nAKnEfDXoAM0PFT3OcpkenzqV2JDfSFdTFT5SZywmdhxQ5Ce A==; X-CSE-ConnectionGUID: EGzH6M/hQQqCD2GE00NvVQ== X-CSE-MsgGUID: R8LF6aAbQcGoyNPSA8CveQ== X-IronPort-AV: E=McAfee;i="6600,9927,11073"; a="29297553" X-IronPort-AV: E=Sophos;i="6.08,161,1712646000"; d="scan'208";a="29297553" Received: from fmviesa009.fm.intel.com ([10.60.135.149]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 May 2024 03:14:17 -0700 X-CSE-ConnectionGUID: xDsrqH1yQnWfuXANoVw2tw== X-CSE-MsgGUID: au6VO20zR22R7xzxsIyysA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.08,161,1712646000"; d="scan'208";a="31035892" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmviesa009.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 15 May 2024 03:14:17 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Wed, 15 May 2024 03:14:16 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Wed, 15 May 2024 03:14:16 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39 via Frontend Transport; Wed, 15 May 2024 03:14:16 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.168) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Wed, 15 May 2024 03:14:16 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TrIgYK1WP6Y52pXHsCN3WpnQk4HOt21YpJhfWs2qB4XneDreW0VxxMEYxIah4zikD848K190SKylGIkCKDAGA9h+y49/PXDnkBPkh2ztIV7JIimx2dj30YadXR20q83bd91zB9nlVhfPFexVeDUxK4wFYRKkOtTYfz+mcoBJArkle6umKtBX99+dVYeJPLgI9XGFUybIplgxlv8xhGda9HngkMopxFqb/exuMOywg+kAQn1sZ9j9xALqv8TwAxxmDkd9pRirPQGKu4bh5NMoCQLxYdeXiWdxYj71hJmHzhC7UHamGAnL3sCXtWTtL+bJWFxrLFIQfLQ7+2Wp3l1htw== 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=87spPtqJZXl2EWghGAFYRR1pWsO3EbDdrBTpAig/U5Y=; b=Ne2J105DJCEDx4+842lr61Jk3cVqgnHghs9sFiDf5nHdl3fWux+UrI2NA8DjOTCoVY/2rI1LuVTRYeD+xTZXljoRB7dao5wkpZoWQSgnhLJAQPrkkdmXVorXa8SXE4D++nGPmu4LkkrZzXqOI///SBjwrosg6C2WMIoEAmidyjk3eRHL/eZeG7OrmeVQKSu6CkEcRMw2/vKOKB+SvnRTAaQ0n8f7KaXFLMqNAd5NQeG6IMFY8OlgGs0WwF2eHZPZtpsaPbMt9PbHTIMMb8vaasyEp63NyO6UQCxUCLngCKXvR1fB/6cmOhW9Cmr6SxM1qDQGny3LRVVaGPmIe/o42w== 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 CH3PR11MB8659.namprd11.prod.outlook.com (2603:10b6:610:1cf::5) by DM4PR11MB7255.namprd11.prod.outlook.com (2603:10b6:8:10d::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.55; Wed, 15 May 2024 10:14:14 +0000 Received: from CH3PR11MB8659.namprd11.prod.outlook.com ([fe80::7037:678a:eb45:ac6c]) by CH3PR11MB8659.namprd11.prod.outlook.com ([fe80::7037:678a:eb45:ac6c%3]) with mapi id 15.20.7587.028; Wed, 15 May 2024 10:14:14 +0000 From: "Wu, Tong1" To: FFmpeg development discussions and patches Thread-Topic: [FFmpeg-devel] [PATCH v8 06/15] avcodec/vaapi_encode: extract the init function to base layer Thread-Index: AQHapkEh3BXci7DT5Eika8NgnZrxQLGYE8OA Date: Wed, 15 May 2024 10:14:13 +0000 Message-ID: References: <20240418085910.547-1-tong1.wu@intel.com> <20240418085910.547-6-tong1.wu@intel.com> In-Reply-To: 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: CH3PR11MB8659:EE_|DM4PR11MB7255:EE_ x-ms-office365-filtering-correlation-id: 7773397e-52c3-42d6-7fe1-08dc74c7c577 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230031|376005|1800799015|366007|38070700009; x-microsoft-antispam-message-info: =?us-ascii?Q?jAPfYW5fy1izIk99MnQqL9FaC6BD9Tmx0YpqoejCpf/BEvef5RBOxQ6BNpiI?= =?us-ascii?Q?IfrDsgKQg5BpexO1LDYm+98WJ+jRSOL8rUnqFpfWEYrVbZ7OgiJiOTDKNM15?= =?us-ascii?Q?hEvuhIJgBu8J6YZLHhnEMVn3IGdaiSq7aJxuTbwa0Uz7DKwdkIxa8Klz4QKJ?= =?us-ascii?Q?A+wTelsvR+6mo2pxDGqb3D7Q7cslpemIrWg80tvZed3m8vfouzGVmcj8ZT7d?= =?us-ascii?Q?xzM/oCovAR92YVHmG06HkC8UoSFNEKBzA6iIu/tNGL+6wlWZ3N1zWG8HOmHH?= =?us-ascii?Q?/LgsfXBQliVhyMkMl/8iqIXnXhLitgmWtysngV+OOHmQdHMu0KtHPnDssjFk?= =?us-ascii?Q?VSIK2umh+sdjzWsYb4G28FPCmIZocf8oStGFe/DqcaCZ3Un0tdWc2XlZOryU?= =?us-ascii?Q?LElGknaryVHPm9Z9iuQ3j1csfzOBIIoyR78KB5njJ0SnyB97Bdvy4jeJYi6P?= =?us-ascii?Q?mA1IlpF+I59HJoNCrDMeKNDy4AzBKBOWBSFjqekpW9xO8KtB5qoD0EbFOHDn?= =?us-ascii?Q?QvDdgFD1I9Icuk5+s92Xa/yWcK7PNid3EaHAcLtVvrPnm6TFvXiWsgfooyfd?= =?us-ascii?Q?RZQCJCTX9cPxILkkLxxA8due9stkqgUo6B+no9FO4X8dykoLoDuQgljCA87x?= =?us-ascii?Q?QxqUooBCrRb10P/QOYlIA4djBbvUqc/HudbHHmLFQyDm/BGyD9sHZ5zxuPBV?= =?us-ascii?Q?+IvW0MlGLVBcCShp4CLZPBG2I+sZ+XwNdX5/ZM4+S/nyl+iqN2bHaoiWiyMb?= =?us-ascii?Q?m56iKdbKpe7+ThyJYtodFAaqvclmls+B8rX/zOQa8KxwZ2wCl3vI6XFqU5N6?= =?us-ascii?Q?DRX5CnjbEA9DPzeSObm8tdOl4lZ00Fr5bRW4agtCdKaCVKRqHkMmY8QMsRE9?= =?us-ascii?Q?dspHoBvJUgasr1rFI2bdWLNStflhUYdIx3fypaBgTGhwRAcbf+yFKYeOWBGu?= =?us-ascii?Q?MIWMmqJ1AkjGGM3mXQdI4g3D1B2/iTCY5H4c2WVbEXCRKzIRX274K4Bvqa7V?= =?us-ascii?Q?w/IuOkkpicQqiSOALQxCeK7QX4SOZhYC4+y038xluIkPUuGmCO3GQAUMmM23?= =?us-ascii?Q?uWz1LU341bOu5TER/oMDeX+P8ou6vvMu12pbmhIcSP6dUclvKIoD1hQIS4wT?= =?us-ascii?Q?vkofJyFpo/7/uIoiu7EmgKsdX1VlqzgK2dmRkxTTLId2ataOqkqGgbhyr9SZ?= =?us-ascii?Q?22+PILqWKQqxVjyvKI9HFx8grQp6UY/1Ecu0i/g5NS0OlFTp3PfzU04E9i32?= =?us-ascii?Q?jiSb6OCtSvSWdhUw4f4SUGv1N5Lchf52zWxdvBNpEWGeQnIgjKNCRR8Qdw03?= =?us-ascii?Q?TUrtFQvinMOFGxvsOrl23kopDRMDxUxOm4m0KPVZI0CKpw=3D=3D?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CH3PR11MB8659.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(376005)(1800799015)(366007)(38070700009); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?6Ya0V7LeJzRuJRVZc+DBoyI+AnUg25O2mWAZKMYHTh5WVJnSV/aJ79jqUtFq?= =?us-ascii?Q?Oeawfr3ylbDln8mFLH53m3Rw8eSMKgRILRpTmO9r53au5F54Aw9EG1mKcAfj?= =?us-ascii?Q?MbJpUDlRL6m5ZW+0rwmIDVa4ar7oO43rbyLN60jLUW7HqEKwxBOgpLsj0h1d?= =?us-ascii?Q?RyoUvilntYZu4liCzFk0+Q3ak6ADZB5Is4dFurmhyalM/YCJMidFVxC5oD9S?= =?us-ascii?Q?Jr2RqUTJ6eH2bBVWFzYfDWGeCeru8E36x/XowL8/uZI1sO+7xBZpgwenisXT?= =?us-ascii?Q?6gIFj8mFSmWX/EPbATRH3WYmoOQDtqhyM2/dNOoPVs/p9pQT2uR2PMKclmFT?= =?us-ascii?Q?hXP7vJunkHGic80Qv0hnv4DeJ4eh2qctzJfitQYfOrdl+hcC1QqNdTpDOWC3?= =?us-ascii?Q?VW4xiLOJA3NI/eqZlJKEYMiRE1Ee3lMvtkq34QaZnYoQ+AFzLWQlsor76nxG?= =?us-ascii?Q?A/dZwXWAXSoF0j4aKT48aJ6CHSLVmltMLhu9achFL6SHrb1ENjniygrqOodL?= =?us-ascii?Q?mfHlJVKAZOp3Jwy87AzY0LwFLOb7q8ex0KaM5ukecIid1qvEVeANRAbZFh+a?= =?us-ascii?Q?2W9qBKbFfT4DqCTzh6k0js0ksuh8msBm1729TcnRoRpL/V05aflkjRRFiY4E?= =?us-ascii?Q?RRdeTxQTkZo6vosvY4zzw38TozU6BYGIdKs4VzqCJFzMR6/7rYdC2Y6/WMzr?= =?us-ascii?Q?vBiFnWdY/vn9x9ZcHdk0dOBpUdepm5Qe2S5TtflJw0BYSsAZ5YmFwEUjwK2d?= =?us-ascii?Q?H7ymW6+UJGoC9BgQ4rEAKFKhxN5XIbAn9L22zk/FISEHBp0MvbTXvGY2TH2C?= =?us-ascii?Q?lOuyEdkjFxI48c9A1l/us6dmHq2ZefjHFChzgXFFv1isPMrwA/b0QaKshMNG?= =?us-ascii?Q?P+abMTyAp/hwU7BI1PmlnmwZRmZTKBCyeiJc2pDiRn5XMBm5UWcKKTbV8/pF?= =?us-ascii?Q?VbryTwEvz3PfWWAfdsM8vTaxQFIGt6A20Z+poGzK8r1oAbZxhzxVk3KvwqkQ?= =?us-ascii?Q?PV1uRA5PVOzc27TRMfzKLztn0xZyYgtmhXCG6wGQe2aQBvN3kEnVy1YnFSGe?= =?us-ascii?Q?b+Kqk2BeXc+1BUmx5Hen89uauFYq6HvbTs6Q68jgezsG4HUaMM0XfEE94HUm?= =?us-ascii?Q?ZsmT81KO/IOAX3XZCKchJsxReAR6JCPRadJ+T0FMAfQpwpjd333bGt1drlOD?= =?us-ascii?Q?PLLgCmE6YMt2g0zpLzNnY85bBuQOhLUgGV5m89yqOAm0g1UX9AoJXj3dGSWV?= =?us-ascii?Q?pP4X6OXvuYlI6QzhDfMCfJ0QrRAXA2PFy1JtpubNNNR3vcSjgjajMbh/puPE?= =?us-ascii?Q?4ufkEgKic1WcHlaCPEOK8Tm7sShQ3xKadHSulCkgJk8qRVYHMXCyx4MkR30r?= =?us-ascii?Q?gH4XsXjDfhAa+XDgmlGmrmnaYECuzg144XYO88xcPrHVbnS5t9Ih8Xn6oG+3?= =?us-ascii?Q?4XS9ZdUVeAg/tmb+BFRJay+9fTpUfzgJa5hoFnaDt/yr2d7FInmtm8mm+T4a?= =?us-ascii?Q?lgcckPwUpgSdcTlfLYnBc+LSbmwjKv6FDRmtspW9uhVsgEZfEoMVIxYPnxW5?= =?us-ascii?Q?7Hf7Ug5YWSlh9oPJWm3UfUjFuNvmh44RBuc7wwxT?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH3PR11MB8659.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7773397e-52c3-42d6-7fe1-08dc74c7c577 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 May 2024 10:14:13.9908 (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: I1ef/IKEeXiutl+EIpfqmpnznMD487XAMvKNmuyfZ8AJIhE8o+JA+QA5gV7qbGYKgIQXlVLydE9gJHyDcGmxiQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR11MB7255 X-OriginatorOrg: intel.com Subject: Re: [FFmpeg-devel] [PATCH v8 06/15] avcodec/vaapi_encode: extract the init function to base layer 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 Mark >Thompson >Sent: Wednesday, May 15, 2024 4:56 AM >To: ffmpeg-devel@ffmpeg.org >Subject: Re: [FFmpeg-devel] [PATCH v8 06/15] avcodec/vaapi_encode: extract >the init function to base layer > >On 18/04/2024 09:59, tong1.wu-at-intel.com@ffmpeg.org wrote: >> From: Tong Wu >> >> Related parameters are also moved to base layer. >> >> Signed-off-by: Tong Wu >> --- >> libavcodec/hw_base_encode.c | 33 ++++++++++++++++ >> libavcodec/hw_base_encode.h | 11 ++++++ >> libavcodec/vaapi_encode.c | 68 ++++++++++----------------------- >> libavcodec/vaapi_encode.h | 6 --- >> libavcodec/vaapi_encode_av1.c | 2 +- >> libavcodec/vaapi_encode_h264.c | 2 +- >> libavcodec/vaapi_encode_h265.c | 2 +- >> libavcodec/vaapi_encode_mjpeg.c | 6 ++- >> 8 files changed, 72 insertions(+), 58 deletions(-) >> >> diff --git a/libavcodec/hw_base_encode.c b/libavcodec/hw_base_encode.c >> index 1d9a255f69..14f3ecfc94 100644 >> --- a/libavcodec/hw_base_encode.c >> +++ b/libavcodec/hw_base_encode.c >> @@ -598,3 +598,36 @@ end: >> >> return 0; >> } >> + >> +int ff_hw_base_encode_init(AVCodecContext *avctx) >> +{ >> + HWBaseEncodeContext *ctx = avctx->priv_data; >> + >> + ctx->frame = av_frame_alloc(); >> + if (!ctx->frame) >> + return AVERROR(ENOMEM); >> + >> + if (!avctx->hw_frames_ctx) { >> + av_log(avctx, AV_LOG_ERROR, "A hardware frames reference is " >> + "required to associate the encoding device.\n"); >> + return AVERROR(EINVAL); >> + } >> + >> + ctx->input_frames_ref = av_buffer_ref(avctx->hw_frames_ctx); >> + if (!ctx->input_frames_ref) >> + return AVERROR(ENOMEM); >> + >> + ctx->input_frames = (AVHWFramesContext *)ctx->input_frames_ref- >>data; >> + >> + ctx->device_ref = av_buffer_ref(ctx->input_frames->device_ref); >> + if (!ctx->device_ref) >> + return AVERROR(ENOMEM); >> + >> + ctx->device = (AVHWDeviceContext *)ctx->device_ref->data; >> + >> + ctx->tail_pkt = av_packet_alloc(); >> + if (!ctx->tail_pkt) >> + return AVERROR(ENOMEM); >> + >> + return 0; >> +} >> diff --git a/libavcodec/hw_base_encode.h b/libavcodec/hw_base_encode.h >> index b5b676b9a8..f7e385e840 100644 >> --- a/libavcodec/hw_base_encode.h >> +++ b/libavcodec/hw_base_encode.h >> @@ -19,6 +19,7 @@ >> #ifndef AVCODEC_HW_BASE_ENCODE_H >> #define AVCODEC_HW_BASE_ENCODE_H >> >> +#include "libavutil/hwcontext.h" >> #include "libavutil/fifo.h" >> >> #define MAX_DPB_SIZE 16 >> @@ -117,6 +118,14 @@ typedef struct HWBaseEncodeContext { >> // Hardware-specific hooks. >> const struct HWEncodePictureOperation *op; >> >> + // The hardware device context. >> + AVBufferRef *device_ref; >> + AVHWDeviceContext *device; >> + >> + // The hardware frame context containing the input frames. >> + AVBufferRef *input_frames_ref; >> + AVHWFramesContext *input_frames; >> + >> // Current encoding window, in display (input) order. >> HWBaseEncodePicture *pic_start, *pic_end; >> // The next picture to use as the previous reference picture in >> @@ -183,6 +192,8 @@ typedef struct HWBaseEncodeContext { >> >> int ff_hw_base_encode_receive_packet(AVCodecContext *avctx, AVPacket >*pkt); >> >> +int ff_hw_base_encode_init(AVCodecContext *avctx); >> + >> #define HW_BASE_ENCODE_COMMON_OPTIONS \ >> { "async_depth", "Maximum processing parallelism. " \ >> "Increase this to improve single channel performance.", \ > >Maybe this patch should be merged with 9/15 to keep the init/close symmetry? >It's not clear that the intermediate makes sense, and it has some churn. > Will do it. -Tong _______________________________________________ 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".