From patchwork Wed Aug 4 17:03:09 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linjie Fu X-Patchwork-Id: 29248 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:6c0f:0:0:0:0:0 with SMTP id a15csp3548519ioh; Wed, 4 Aug 2021 10:03:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw3s5746JdMJB8HYbP8uNHEPDR0lbK6ufWRbUrEl3K5vHSjrx9DdMS/sW06jYMRHSkwhG5R X-Received: by 2002:a5d:522a:: with SMTP id i10mr372845wra.280.1628096617974; Wed, 04 Aug 2021 10:03:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628096617; cv=none; d=google.com; s=arc-20160816; b=AgqASka38YH1b42nR/uDolzOi6Vd0in6nZM5R6LneKAlNIsG7mDS8VJQ7/evdCXSDO TZbwFLLi94EeykywT1nJQ92tvYVMD7BE2pJ4k3+wlmFzRADigbyZEvgFvlz1xGu5U1ND zvfONRgS/tISQs7ZhQ4iPUKlX400dZpfLXP1FNpao9Iz+a+XTwgxBSQgWV8qR+E6fgJw t2/b+PryZ+Q8jT9075vd5yWHolFoWzJPtwHobcjtPw19DybqVFHj/sI4XFd1UROMqgaJ dHjCWVptxRFM8SDp5VyAuPwu7nJ3Jf896OIY1o392TbpaYB98auN6eeSkAKrz+ywOpWG 1xSg== 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:message-id:date:to:from :delivered-to; bh=b4219CnJJcXxCXXJZEUv914FRJTjKvk5O2vUbzpi6JA=; b=B64wL1sd2UdKBMCGcE/+hKoNEFqFn77Z4tCuI0caC6RPl1tgCKQPKtF7d4Ql952gNW imAMuJXzOWmC1ferODmsQcXo/2AGl+K2pOXDrv8mO0zkXrI5IuWxLKWBM3dqbRlYEHIc +sqxPBzfcr5Fi6uPACINs4X1A54UJGzmFN1c3PQOqO6OGBRH7feAweEHbsJ7F3ghUbrI nKG/dwSAnpSnUiQYeihC3h6HdKgl2RbhKa3ye6XY51KfjI8jjxEg9lLtxCuPpbs2Noaa GiJ0lWLWt5caosCiHhT17UaKj9hQleeH1PkVGhgMM0Yxpn7C1r3AB34Txm0GTrFvQ6Lx 8LqQ== ARC-Authentication-Results: i=1; mx.google.com; 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 cw2si2731866ejc.730.2021.08.04.10.03.37; Wed, 04 Aug 2021 10:03:37 -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; 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 1F6C068A2B2; Wed, 4 Aug 2021 20:03:26 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from zg8tmty1ljiyny4xntqumjca.icoremail.net (zg8tmty1ljiyny4xntqumjca.icoremail.net [165.227.154.27]) by ffbox0-bg.mplayerhq.hu (Postfix) with SMTP id E70DD689DD9 for ; Wed, 4 Aug 2021 20:03:18 +0300 (EEST) Received: from localhost.localdomain (unknown [58.247.209.118]) by mail-app3 (Coremail) with SMTP id cC_KCgD3_xtQyAphu2KPAg--.37631S2; Thu, 05 Aug 2021 01:03:13 +0800 (CST) From: Linjie Fu To: ffmpeg-devel@ffmpeg.org Date: Thu, 5 Aug 2021 01:03:09 +0800 Message-Id: <20210804170311.86426-1-fulinjie@zju.edu.cn> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 X-CM-TRANSID: cC_KCgD3_xtQyAphu2KPAg--.37631S2 X-Coremail-Antispam: 1UD129KBjvJXoWxZrWDArWkAF4UGry7Jr1DKFg_yoW5ZFyDpr 4ruas7Wr4xJFy8A3sxXr1DtFWrW3W8Jan8uayFgwsrJ3Z5CrnIgw4Skry5uws7ua18ZrW0 qF4Yk3WxWFyjqF7anT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUkq14x267AKxVWUJVW8JwAFc2x0x2IEx4CE42xK8VAvwI8IcIk0 rVWrJVCq3wAFIxvE14AKwVWUJVWUGwA2ocxC64kIII0Yj41l84x0c7CEw4AK67xGY2AK02 1l84ACjcxK6xIIjxv20xvE14v26w1j6s0DM28EF7xvwVC0I7IYx2IY6xkF7I0E14v26r4U JVWxJr1l84ACjcxK6I8E87Iv67AKxVWxJr0_GcWl84ACjcxK6I8E87Iv6xkF7I0E14v26F 4UJVW0owAS0I0E0xvYzxvE52x082IY62kv0487Mc02F40EFcxC0VAKzVAqx4xG6I80ewAv 7VC0I7IYx2IY67AKxVWUJVWUGwAv7VC2z280aVAFwI0_Jr0_Gr1lOx8S6xCaFVCjc4AY6r 1j6r4UM4x0Y48IcxkI7VAKI48JM4x0x7Aq67IIx4CEVc8vx2IErcIFxwCY02Avz4vE14v_ GwCF04k20xvY0x0EwIxGrwCFx2IqxVCFs4IE7xkEbVWUJVW8JwC20s026c02F40E14v26r 1j6r18MI8I3I0E7480Y4vE14v26r106r1rMI8E67AF67kF1VAFwI0_Jrv_JF1lIxkGc2Ij 64vIr41lIxAIcVC0I7IYx2IY67AKxVWUJVWUCwCI42IY6xIIjxv20xvEc7CjxVAFwI0_Jr 0_Gr1lIxAIcVCF04k26cxKx2IYs7xG6r1j6r1xMIIF0xvEx4A2jsIE14v26r1j6r4UMIIF 0xvEx4A2jsIEc7CjxVAFwI0_Jr0_GrUvcSsGvfC2KfnxnUUI43ZEXa7VUUvD77UUUUU== X-CM-SenderInfo: ysrvjiarsuq6lmxovvfxof0/ Subject: [FFmpeg-devel] [PATCH v4 1/3] lavfi/vf_scale: use default swscale flags for scaler 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: Linjie Fu , Linjie Fu Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: kYMCuoePoVil Currently the default swscale flags for simple filter graph is bicubic, however for complex filter graph it uses bilinear as decleared in scale filter. $ffmpeg -v verbose -i input.mp4 -vf format=yuv420p,scale=800x600 -an -f null - [Parsed_scale_1 @ 0x7f86d2c160c0] w:1920 h:1080 fmt:yuv420p sar:0/1 -> w:800 h:600 fmt:yuv420p sar:0/1 flags:0x4 $ffmpeg -v verbose -i input.mp4 -filter_complex format=yuv420p,scale=800x600 -an -f null - [Parsed_scale_1 @ 0x7f8779e046c0] w:1920 h:1080 fmt:yuv420p sar:0/1 -> w:800 h:600 fmt:yuv420p sar:0/1 flags:0x2 Use default swscale flags (bicubic currently) for scale filter. - Remove flags="bilinear" from vf_scale - Update the FATE refs Signed-off-by: Linjie Fu --- libavfilter/vf_scale.c | 4 ++-- tests/ref/fate/filter-scale2ref_keep_aspect | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/libavfilter/vf_scale.c b/libavfilter/vf_scale.c index f07e01bf90..683c4caa37 100644 --- a/libavfilter/vf_scale.c +++ b/libavfilter/vf_scale.c @@ -313,7 +313,7 @@ static av_cold int init_dict(AVFilterContext *ctx, AVDictionary **opts) scale->flags = 0; - if (scale->flags_str) { + if (*scale->flags_str) { const AVClass *class = sws_get_class(); const AVOption *o = av_opt_find(&class, "sws_flags", NULL, 0, AV_OPT_SEARCH_FAKE_OBJ); @@ -900,7 +900,7 @@ static const AVOption scale_options[] = { { "width", "Output video width", OFFSET(w_expr), AV_OPT_TYPE_STRING, .flags = TFLAGS }, { "h", "Output video height", OFFSET(h_expr), AV_OPT_TYPE_STRING, .flags = TFLAGS }, { "height","Output video height", OFFSET(h_expr), AV_OPT_TYPE_STRING, .flags = TFLAGS }, - { "flags", "Flags to pass to libswscale", OFFSET(flags_str), AV_OPT_TYPE_STRING, { .str = "bilinear" }, .flags = FLAGS }, + { "flags", "Flags to pass to libswscale", OFFSET(flags_str), AV_OPT_TYPE_STRING, { .str = "" }, .flags = FLAGS }, { "interl", "set interlacing", OFFSET(interlaced), AV_OPT_TYPE_BOOL, {.i64 = 0 }, -1, 1, FLAGS }, { "size", "set video size", OFFSET(size_str), AV_OPT_TYPE_STRING, {.str = NULL}, 0, FLAGS }, { "s", "set video size", OFFSET(size_str), AV_OPT_TYPE_STRING, {.str = NULL}, 0, FLAGS }, diff --git a/tests/ref/fate/filter-scale2ref_keep_aspect b/tests/ref/fate/filter-scale2ref_keep_aspect index 8dd0dbb13b..53c6fc14ec 100644 --- a/tests/ref/fate/filter-scale2ref_keep_aspect +++ b/tests/ref/fate/filter-scale2ref_keep_aspect @@ -7,8 +7,8 @@ #dimensions 0: 160x120 #sar 0: 1/1 #stream#, dts, pts, duration, size, hash -0, 0, 0, 1, 57600, 9a19c23dc3a557786840d0098606d5f1 -0, 1, 1, 1, 57600, e6fbdabaf1bb0d28afc648ed4d27e9f0 -0, 2, 2, 1, 57600, 52924ed0a751214c50fb2e7a626c8cc5 -0, 3, 3, 1, 57600, 67d5fd6ee71793f1cf8794d1c27afdce -0, 4, 4, 1, 57600, 85f7775f7b01afd369fc8919dc759d30 +0, 0, 0, 1, 57600, 65fe9892ad710cc5763b04b390327d40 +0, 1, 1, 1, 57600, 5e8d4524bc8889afa8769e851e998bc0 +0, 2, 2, 1, 57600, 8f5e0e58d1f4c2104b82ef7a16850f1e +0, 3, 3, 1, 57600, cfe4142845e1445d33748493faa63cda +0, 4, 4, 1, 57600, bb491f3b01788773fb6129aef0f0abd2