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 2ADF2451F3 for ; Thu, 12 Jan 2023 04:48:53 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2939468BD8D; Thu, 12 Jan 2023 06:48:51 +0200 (EET) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04olkn2049.outbound.protection.outlook.com [40.92.75.49]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0708068BC9D for ; Thu, 12 Jan 2023 06:48:45 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VziGv1NjYgwtMIPiRkTKSNjG3w7KHTCgSg4r8ok4wnwvP5a6FlL790N2cLIDIVwGsezGUgkkTUUGWYFF1o1lDZS39mLLg00j6GM+uWfRRBDa2+gNIGtkYSkYj4a7+JXkWVroB24q3uzEH/O2Pb1kt35ghp7LFev8UuV7a3Fs7ZLhCaFclfcfnpvBGQ3PFXO5bu4iSfgGk5NqGZ/bX+MnmHteVzsorOGDlUsbF6jkZatQYDdxUgMR4vFI5brYlcSEAy4OZsky5UYQlgxZCOcD0PSb2uMXKumJ2Fqp0L7gSswJ5j/tCCwNauMh/95u+G+B08jcODz90+2V7aVCzOFoCA== 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=3VmX5OB/PG3aulcmH6uHKxm9FidP+BA3fMj6+BDy7j0=; b=EQFeC4Zp5pGQlRb6dRfFLK7Gcjxyb1JeXYLczJ9XG2xklaIVVtq77lcBXPDxt/iuVDvxfQa27f8bHRYU5dzq4fM/ujad1jm0ckohfPwKkdJew0aZErQUWLr1DowWq6uUjTD2RGJ83/afqYF84qsaBWjLoBA9J2Iwk1lufkQddClheK99FPCNb/I8GgRtsy3tnohLOrZDRs6uqcAHl9u7akLvCRrIeFUb4ojTGNhMY5Qc1JI0CApkZ8cGlp0O5slFeQkFeiSRVnmxFn6cg7R2Etn0lBW2WchMEFsRdNQVCkeVXotp82hy+hYATcuDZWdLf4AmqsHtXIIbG6bsM9go/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3VmX5OB/PG3aulcmH6uHKxm9FidP+BA3fMj6+BDy7j0=; b=JwYsYAL4cw/ELynV5qOm+ulEBtp9kJjxxWcd7qCBdpC+3qu7CnJxlzoH3CqYf8arSE0841LSFNls8QLiX0Ul46j+g+h8VW/3aBmuHlGA1meaoMxGgrWVhd3JcWTlRhjHpNNxFZnI431q/CnvQ7XdiOmiK5oPP5KkR/9m+pYhBMpv7m6XnvSNK8/wKs4PaQ7G283fmIkay1LR4FMAu1Qzp5+8GegQwtnG4tjt0Jvwpup+UpnQirVJVlyvBEmh4gsqc3IgU0CpdUTp2TXJx01id/sD3cPbHh4rp4lAfW04Zc7I/duXrOURETyVVP20dElWgkHlJYL0zjk5T4r5Ln5G8g== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by DU0P250MB0994.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:41d::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5986.18; Thu, 12 Jan 2023 04:48:43 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::c37:cabe:316a:60b2]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::c37:cabe:316a:60b2%4]) with mapi id 15.20.6002.012; Thu, 12 Jan 2023 04:48:43 +0000 Message-ID: Date: Thu, 12 Jan 2023 05:49:12 +0100 Content-Language: en-US To: ffmpeg-devel@ffmpeg.org References: <20230109071210.1829699-1-haihao.xiang@intel.com> <20230109071210.1829699-4-haihao.xiang@intel.com> From: Andreas Rheinhardt In-Reply-To: X-TMN: [5AWQv7byEAZmdiqNzuSk1FCA7+mK/LDN] X-ClientProxiedBy: FR0P281CA0145.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:96::18) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <3de89260-c43e-c8e6-5b24-68f7576c8869@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|DU0P250MB0994:EE_ X-MS-Office365-Filtering-Correlation-Id: 11a7b091-ca61-4fed-2a13-08daf4584822 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 2vmJaqcbdCw0meql9XGKeiS1ti8Z6+aXx0BPd75g/ShCj6YG0S03lsBUWOOOMydCAxlpLRLsdvl8ABwfOEd98R4D1tEoVoByvTiqjHc5y8bAlqW1VMPq7IwR4iNf/RKIFuA7qxVsolENWh9VDTBnCbEjp6HKYhfKmEZOkKEvrckjte5BlH1ovY6VEIjZQ+nSlJZ9PE47Bp7HlYlHSM+bsXoSWKCvxaBvIa83ynTFkfLr9SHTcOT4vBONtGyHmWQM6iEvbQ6LvaLpPw9hYgmRR5kQy7sXxBKZIALr+Fhkvprv7ScNmR/pz7IgR+mvzreOnHGtR3pDA5KcmiwjYt45AXzkmOg/VEN0BYrS6kErCpjil+0JHU8uBH4hO3Ph+4UdZkcN/XpiYno0K1Swi3eurhpka9iyo42hvcu5ZkvXGTE6hDeXOu9sPfHV9aX2DkGdTggWzZ643I/JtOF7rSxdWnTTIbw/5A39hS41Ql/zt8fh0golNbyaLutFDhV7hpPMULFyuSgjrWFM9Y69rvADIoqoPXFIaEZ9/LeByWJTBUvizb1Ps87QG+SLLQ8PUjeoZ7wbE4us1xEGIGqAwS3V9Wq3zKZ2wYZIvFQtiuivxedw6doSneMfNqsV4OQ6YlalRHLzQeo/Cz3+fT8yUOZyBA== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SzdmMjZTdVlHSjNoUHE0aUtDNTJlS3R4ZmxEM1R3cnN3bm5YZDJ0VGNTYnl4?= =?utf-8?B?MDcybkNyd3AzUER6NU9XWTRiSXR0L05ndnBJWmw4d0E0eVNUWWdPVzhobXUy?= =?utf-8?B?Zmd2UW1XUEtoSndSM1M3NDhtTUZtak01Q1FFOHYrMUJrOXRpRU5qenVCT0pX?= =?utf-8?B?RENNc3F2Q2hvRWJnd2ljZWw1SllwWmZQeVNxVEdGVjJybnRzdG1iaEx6N0N2?= =?utf-8?B?KythdXRyK3ZuTHpOOXNTelJFQk1FdHZTb2lBdm8veCt3NHhMZUJlS1Vaa2JD?= =?utf-8?B?TTNJZWwzV1A4UGFBMzF5TTFpSXUxZ3l0eWUxZ3FnY2IvYmRETU4wWDVJODVI?= =?utf-8?B?VUZwYXdIUmluQ2pvQ3plUTRQOU9JZmNyQmlMRFFLV0R0QnFYY2diK1ZzMFgr?= =?utf-8?B?Q0JFdnljUFdJL3B2c25wcjROeDZ4M3RKUFEyZjZWdENKOVlTeEEwTTNyeE45?= =?utf-8?B?M3doclpPOHBkTzhCOVlSbjE1Zk94RS81YzNmcWNxbzNoSGJQY1NSeVBqQngw?= =?utf-8?B?aVZrb2N3a25sWFIwYUlUdXlQejBMaU5KZTYwM2NxT0d5Y3NrWkxYOUZ1M2pD?= =?utf-8?B?Z2NFM2owV0ZoQlo4Y0dFM2pVVktlM0NBcHFjVmlEVnVlYWM5OVIzOHBoQmpW?= =?utf-8?B?aFBGV09lakhtTGhXdlJLQU1PR3FQYnI0Zkx5aUsvTnB2K01lVnBLd2JRRU8z?= =?utf-8?B?YVhlZ3NpSHc5Qk8zU1M4YkZaVXRLdmd4UDV2UUg0K2VUakpwR2JkSnU1SHln?= =?utf-8?B?M1VNZDQweE1oSjY0S1M2b3U3OTMvSjlXWEVBMGtzVmVsZE1LVUk2S1preEMy?= =?utf-8?B?Wnd5SlBlZnl2WnBNZmprLzl3S1YxSFJacEFRMmg0SnVXRW4wU2xNN3pvMUZ2?= =?utf-8?B?a2picDFFNTA2WVJWd1lnVjlwN1hyenJiMUpvZVFHYWVETHhlNm9OcjZKdVJa?= =?utf-8?B?NkkrRXJCd0poZVRzOTBhNkxwVlU1RUJXMXNJV3p5eFV5WUNlcEExU1JlRVBZ?= =?utf-8?B?YzhRYkVzREZDR3M1ZlhscFQyOG8yVi9Wd0kzYXRMR2lHcjhabXdEeXJ6MmFN?= =?utf-8?B?cWgvZVBhTDNLMEFQNXFjL2xUaFBRTEFNdnFQRlRLR0xESUdaUVkwZFZIZUh2?= =?utf-8?B?QWZGMWQwbmNNaUxhbDdlUGNJWGkxUHZQMjlpa2xQVWZOTWsvT3Z2TVBoUjZi?= =?utf-8?B?OTYybGV3UWFmR1IzSGFDR0Y0U050OGNMY29YRXhINEJ5ZTVDMGp5VU9CVGhl?= =?utf-8?B?YWJJa096aElvaGVKZzRKbVI1OGVMMFVCMzJBSEtyTVdKQkh1ZmhMbStsTGI2?= =?utf-8?B?QTZZUHpINUxucW54a05SQmM0U0puL3BtSExPRUxhMFFJU2hxNHd1QVNLRmRw?= =?utf-8?B?M1A2cGh1Z1ArcHZROTk3OTJjVDNOOHJiV01KQUM5U1FqQzZEMFVqK1BYYlFp?= =?utf-8?B?dUtIWnhmVDZHS0pDRlNXb3d4OTJCckRJNWVORy9Yc3Y1dU9DcSt3L1F6aVhC?= =?utf-8?B?R3djYVhaRjF3cjR4bGZSV0ZPRkFOYnJsMkg3V2hoek5UQ2NQYThyWXhISWhL?= =?utf-8?B?cWh3eCtKeU9VY0ttS2s1QlNPbTY5aStRNkJvZmRIdHpzRzh1SkY1M1NvMVZV?= =?utf-8?B?bEgzQmpsNHpSQjNyVzhTbzNjZmRic2x5OFEyaXkzSmROSG81NUJlQVgvRU5F?= =?utf-8?B?ZHlWVENGZG5Ed3pwZ2VQOUlYeC9VZDkrTzZJVkZWMEw3empYZjlCRkpPUHZD?= =?utf-8?Q?u0HnH0lu68HIiX/nq0=3D?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 11a7b091-ca61-4fed-2a13-08daf4584822 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jan 2023 04:48:43.2574 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0P250MB0994 Subject: Re: [FFmpeg-devel] [PATCH 4/8] lavfi/vf_vpp_qsv: add vpp_preinit callback 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: Xiang, Haihao: > On Do, 2023-01-12 at 05:11 +0100, Andreas Rheinhardt wrote: >> Xiang, Haihao: >>> From: Haihao Xiang >>> >>> Set the expected default value for options in this callback, hence we >>> have the right values even if these options are not included in the >>> option arrray. >>> >>> This is in preparation for reusing the code for other QSV filters. >>> >>> Signed-off-by: Haihao Xiang >>> --- >>> libavfilter/vf_vpp_qsv.c | 14 ++++++++++++++ >>> 1 file changed, 14 insertions(+) >>> >>> diff --git a/libavfilter/vf_vpp_qsv.c b/libavfilter/vf_vpp_qsv.c >>> index cf11cd7fdc..2a7b06fa33 100644 >>> --- a/libavfilter/vf_vpp_qsv.c >>> +++ b/libavfilter/vf_vpp_qsv.c >>> @@ -259,6 +259,19 @@ release: >>> return ret; >>> } >>> >>> +static av_cold int vpp_preinit(AVFilterContext *ctx) >>> +{ >>> + VPPContext *vpp = ctx->priv; >>> + /* For AV_OPT_TYPE_STRING options, NULL is handled in other way so >>> + * we needn't set default value here >>> + */ >>> + vpp->saturation= 1.0; >>> + vpp->contrast = 1.0; >>> + vpp->transpose = -1; >>> + >>> + return 0; >>> +} >>> + >>> static av_cold int vpp_init(AVFilterContext *ctx) >>> { >>> VPPContext *vpp = ctx->priv; >>> @@ -683,6 +696,7 @@ const AVFilter ff_vf_vpp_qsv = { >>> .name = "vpp_qsv", >>> .description = NULL_IF_CONFIG_SMALL("Quick Sync Video VPP."), >>> .priv_size = sizeof(VPPContext), >>> + .preinit = vpp_preinit, >>> .init = vpp_init, >>> .uninit = vpp_uninit, >>> FILTER_INPUTS(vpp_inputs), >> >> I do not get the point of this at all: None of these options are of type >> AV_OPT_TYPE_STRING. You are merely setting the default values that >> av_opt_set_defaults() would set lateron anyway. > >> >> I also fail to see how this would facilitate reusing this code for other >> QSV filters. > > Actually this is a part of an old patchset, see > https://patchwork.ffmpeg.org/project/ffmpeg/list/?series=4467, I want to use use > functions and data structures defined in vf_vpp_qsv.c and qsvvpp.c to implement > scale_qsv and deinterlace_qsv filters, hence we may remove vf_scale_qsv.c and > vf_deinterlace_qsv.c > > E.g. > saturation option is used in vpp_qsv filter but not in other qsv filters, so > av_opt_set_defaults() works for saturation in vpp_qsv filter but not for other > filters, we need to set a default value to vpp->saturation for other filters, > otherwise vpp->saturation is 0 for other other filters. > If you need this for other filters, then why do you add and use a preinit callback for the filter that doesn't need it? - Andreas _______________________________________________ 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".