From patchwork Fri Oct 4 08:42:14 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Khirnov X-Patchwork-Id: 52020 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:938f:0:b0:48e:c0f8:d0de with SMTP id z15csp257441vqg; Fri, 4 Oct 2024 01:43:24 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCWH2tFxQ8W09HZVkSvqmS3JXi+FTFw5xYqw0+kdKjjFEw/TEJ4uSGEE+kYpWc0gb3WKj250xP1bmHefxmIiT06k@gmail.com X-Google-Smtp-Source: AGHT+IEN5viIfgFRlTAjkkcdedYh4S2eyy03VcHlLKG+m1E9lfstPGIggh95BnPZ6wWiVSyz3Vg4 X-Received: by 2002:a2e:bc1a:0:b0:2fa:d2c3:a7dc with SMTP id 38308e7fff4ca-2faf3d73f52mr3109111fa.10.1728031404377; Fri, 04 Oct 2024 01:43:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728031404; cv=none; d=google.com; s=arc-20240605; b=FOh5mR/2ybQ9xlem+2WWzHwm1qGHzIV3TuntkDqaZj9EnjjRgmhmjnk/2zdAGN3GOn S18jHIpeqcwhFT0DTjUuCmCqZAPHze/pKSvQ0qqiU50cJGi6JEnyJYAJrjaCpEvB4TYZ LLbcyNQpSwbaJ8p72ph7K+rLlypk6zgr6+kyE7F/qS1U8bI2xiXxEfOVaro2vLWaBR0V sNF7SSpGhNVhUIJC1tF/ftBigdfY8q3pArS71ANPGDS1Oa1ahzyp4g6AXVZ/rqpDg0Fu 14rIWwdlS1Zu2kn/6YStVmgN6t6q2iDJTv6CU6w/5pTuoK/0YC4kwjtTOAs13CHjIMHU g9AA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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=vJoH0x3LAlDKt2PsipmUqL5+wKWmC2JG22qyP+RfWq8=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=k9fnhar3yeI5PpAs68UPPTIqqtxXmZG6CM8580xExmqufe6+C1hxvMLB0CmgszvXka poPsBa/8Lmag1Nutm0DPd4Jp04dzohDM0NxxEEwhSGw6sZIiCoSUxrnPeZDrToIaeVr6 GLiLV7IytDThN97kovPhzTvu/tSF0mcPJWiKz2vSemIZsNlOebvYrRliiLosXAAF7ygi 6ufeE2nZr3ajqTcYtZNlhwTVcNaZvY3gFdGjMVrIXxmzudCuH4V9n44Yd1gayx2WQnOu OF726MlzBnn1dZ8jCIV1J7KWc+Yaz/ogDvbERFXsCICtUlqdWV7SxJNVcjSDRC/Ep5mO /nwg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@khirnov.net header.s=mail header.b=EC7KyFy0; 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 38308e7fff4ca-2faf62b16a3si2037541fa.25.2024.10.04.01.43.23; Fri, 04 Oct 2024 01:43:24 -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=@khirnov.net header.s=mail header.b=EC7KyFy0; 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 0F7BC68DAF3; Fri, 4 Oct 2024 11:42:59 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail1.khirnov.net (quelana.khirnov.net [94.230.150.81]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B30A868D9E2 for ; Fri, 4 Oct 2024 11:42:51 +0300 (EEST) Authentication-Results: mail1.khirnov.net; dkim=pass (2048-bit key; unprotected) header.d=khirnov.net header.i=@khirnov.net header.a=rsa-sha256 header.s=mail header.b=EC7KyFy0; dkim-atps=neutral Received: from localhost (mail1.khirnov.net [IPv6:::1]) by mail1.khirnov.net (Postfix) with ESMTP id 408F84DEE for ; Fri, 4 Oct 2024 10:42:51 +0200 (CEST) Received: from mail1.khirnov.net ([IPv6:::1]) by localhost (mail1.khirnov.net [IPv6:::1]) (amavis, port 10024) with ESMTP id KXYRUr7L-HiD for ; Fri, 4 Oct 2024 10:42:50 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=khirnov.net; s=mail; t=1728031369; bh=ax01H+Z6rO6zOmzDtqKcchk69O4Z6bVZgTdTQ4IhuHU=; h=From:To:Subject:Date:In-Reply-To:References:From; b=EC7KyFy0HHNGTHVZ1tlYdPVMXWkJy/pvvLEYTZtDr00EaDS7vpZS8gUY/g1pQSDEy fcKH57AnHxt+o8PEHUUL6XVpiXbHRoeeabtorm4Tw99oBFjjxeVMe0oX8L/sWeAEYN yQHDWqs4HYWt2IpBxYUx8b5U/mn6MfHle5H10cKs99SWf8/EU5blN/p7Yx1cqllFKv mpw1jFf1t8qWVbcLUJiKg5tzCsXyZDdHVd58ZjFxcoDjMcIcr6kOB22uxnSka+NyON /ZY9VmVQ/UQw64O1WDexbwJzTf8xsEcID7EcWYtaP0aPQlnXSDxOt6rvtsF3h7kAnx eHF5SpG47XOHQ== Received: from libav.khirnov.net (libav.khirnov.net [IPv6:2a00:c500:561:201::7]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "libav.khirnov.net", Issuer "smtp.khirnov.net SMTP CA" (verified OK)) by mail1.khirnov.net (Postfix) with ESMTPS id BC0924E14 for ; Fri, 4 Oct 2024 10:42:49 +0200 (CEST) Received: from libav.khirnov.net (libav.khirnov.net [IPv6:::1]) by libav.khirnov.net (Postfix) with ESMTP id A25243A1A1B for ; Fri, 04 Oct 2024 10:42:49 +0200 (CEST) From: Anton Khirnov To: ffmpeg-devel@ffmpeg.org Date: Fri, 4 Oct 2024 10:42:14 +0200 Message-ID: <20241004084230.27419-4-anton@khirnov.net> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241004084230.27419-1-anton@khirnov.net> References: <20241004084230.27419-1-anton@khirnov.net> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 04/20] lavfi/vf_colorspace: switch to query_func2() 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: qFtyk/Wec8q7 --- libavfilter/vf_colorspace.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/libavfilter/vf_colorspace.c b/libavfilter/vf_colorspace.c index 344dcd5f9e..62055aa1bf 100644 --- a/libavfilter/vf_colorspace.c +++ b/libavfilter/vf_colorspace.c @@ -830,7 +830,9 @@ static int filter_frame(AVFilterLink *link, AVFrame *in) return ff_filter_frame(outlink, out); } -static int query_formats(AVFilterContext *ctx) +static int query_formats(const AVFilterContext *ctx, + AVFilterFormatsConfig **cfg_in, + AVFilterFormatsConfig **cfg_out) { static const enum AVPixelFormat pix_fmts[] = { AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUV422P, AV_PIX_FMT_YUV444P, @@ -840,32 +842,34 @@ static int query_formats(AVFilterContext *ctx) AV_PIX_FMT_NONE }; int res; - ColorSpaceContext *s = ctx->priv; - AVFilterLink *outlink = ctx->outputs[0]; - AVFilterFormats *formats = ff_make_format_list(pix_fmts); + const ColorSpaceContext *s = ctx->priv; + AVFilterFormats *formats; - res = ff_formats_ref(ff_make_formats_list_singleton(s->out_csp), &outlink->incfg.color_spaces); + res = ff_formats_ref(ff_make_formats_list_singleton(s->out_csp), &cfg_out[0]->color_spaces); if (res < 0) return res; if (s->user_rng != AVCOL_RANGE_UNSPECIFIED) { - res = ff_formats_ref(ff_make_formats_list_singleton(s->user_rng), &outlink->incfg.color_ranges); + res = ff_formats_ref(ff_make_formats_list_singleton(s->user_rng), &cfg_out[0]->color_ranges); if (res < 0) return res; } + formats = ff_make_format_list(pix_fmts); if (!formats) return AVERROR(ENOMEM); if (s->user_format == AV_PIX_FMT_NONE) - return ff_set_common_formats(ctx, formats); - res = ff_formats_ref(formats, &ctx->inputs[0]->outcfg.formats); + return ff_set_common_formats2(ctx, cfg_in, cfg_out, formats); + + res = ff_formats_ref(formats, &cfg_in[0]->formats); if (res < 0) return res; + formats = NULL; res = ff_add_format(&formats, s->user_format); if (res < 0) return res; - return ff_formats_ref(formats, &outlink->incfg.formats); + return ff_formats_ref(formats, &cfg_out[0]->formats); } static int config_props(AVFilterLink *outlink) @@ -1035,6 +1039,6 @@ const AVFilter ff_vf_colorspace = { .priv_class = &colorspace_class, FILTER_INPUTS(inputs), FILTER_OUTPUTS(outputs), - FILTER_QUERY_FUNC(query_formats), + FILTER_QUERY_FUNC2(query_formats), .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS, };