From patchwork Wed Feb 14 22:06:29 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Niedermayer X-Patchwork-Id: 46290 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:b819:b0:19e:cdac:8cce with SMTP id fi25csp224214pzb; Wed, 14 Feb 2024 14:07:22 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCWSq3DfOU+2lsf9VUy1+8hoCTKbOi5Loln5+Trb15tKJ3RrWa7SXKMkQvio8neef1iG3ZV41kHTd7+5IhSzwRSM+qJJ0ACxvJ7nEA== X-Google-Smtp-Source: AGHT+IGsu1Ct6hZbkr6mJAa/AKX8KllA9pkvVv/APuqEVpwUcaOdsedkIk0+D7UOYyOh3Xn/iLGk X-Received: by 2002:a17:906:2312:b0:a3d:26ec:dec2 with SMTP id l18-20020a170906231200b00a3d26ecdec2mr2892528eja.2.1707948442066; Wed, 14 Feb 2024 14:07:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1707948442; cv=none; d=google.com; s=arc-20160816; b=ALEBQeKg0hxvrhodUjYUiXKia4BRz2/QLKyGSXT1oadB6vvoN9nmFHysovaZrfuMlc odu0ym9sDf6SNUGNuttSTmltprX0/4zUPXjkRu7lEB3WTKUiLsjiVmfuQ26TJ/Hwl6jA 9NmXs/34UzJADVGtjTD7reNvNewsI99b4TEUbytToH9TlQREzLsWPHPwYrOLmKWN15zr HI4/hf4gPLqncshxhVgmzxATPO2wsgsd0aiSGc6GhApmb4rXpbaa/O/5pT43ufAa7v9O KF2ho2yyiugmcP8TYzM2578lRhDX/+0XLYqJzB9wjpq0uFuj4Tpjv0vXXR604DoGFHcL cjaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to; bh=nANXAy2LG5W4a/AlRKOF8lCFkq8Ci43a2tUnYE6P9+o=; fh=6hiYGYu3mODSCWNl3G7hQrY0DaAIWPKdMoUAZvLFaFw=; b=qOgHAMpOsPGD/Fd6g65mqypZD4Sg20HU0CpRVuztRHCUBHcYC02Xhw4I6bgo+ZXjLi u4j2PqNHSASbZjSubxie+5ABRzTv//YClTA1fJDGQ2pn7/YySn3qPj6mzpREAH7YqucB jU0eDDBF43wSWcIMvxG8hEQ7Pb9Z1OS1+7jJgSQRya4VRVwPgbarYXtv2B4/Vojhm0Vv VCUrA8WYAIY1oq8Gk3uh30jmZItBwyt7MXZD9qip80CXhCNWNo39wg5KCWm0MGkjLkiB yEcQ75bP8/qxKubom8AltoGAI2fcQ4SBKYkGOcC+T0o6MaVUhUQ31e43HPSFasUVxaen 2Tnw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@niedermayer.cc header.s=gm1 header.b=QjYFz7if; 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 X-Forwarded-Encrypted: i=1; AJvYcCWn/6HtD1AXI9N/dD+zfhVQc+swpI+BD3qmGXJkVCfiYkB5l5LOqNNsi4QrPGCeICSxW5rSkDgeoYoHKdhOMuFTLjTFEXoIrA93HrXWpf5DybM8C5dwS39vuI6cSJtAcyVnq8c1U4hgfLYiTABzQquhV3nRQ2pgY+w06v0JvdZTCvK9BxqwKe48JG2xSGBkuNQPVR86gVp6NdFIjMaehvaBDfoLCbI/FZnB/ED8jeHwZsniQ8eOM/cC02fbv0Vy3Ai9u/rbxiiJyLZ17PKrujcHJSvYrG+HAFmrQ/o/a0xtc7yc8v4Ro1IUZTF+CuuV3HvSTXVhQ08Wa+fU4ssgfHXE8i/CZ/ScwBaWRm3yS+7EFm9Cp4YsS/MvV9BTn4lII5vKiDQRsYEj50RpTDA7w1h9WUWaNHOnM5nK+NDHKNPv8acs1J99AWpredR3NlVD5hOSvrlv60vxD9AHOT408BLJNsmYAlv8IW6NYUYoyVkVLbRnTAG1UJ4m5yxXPfgdNZiRFTho3Ev/KdBwyzS9Pop9vfBPJe4CEWydwe6YPZokUhebWoK+PQSHu8vu8SIb+WfGFy3x9j/sSGiYCFhiTvo8TjWCpC047kViEo2PifqWtFznaMg8/tXBdInQ0WQftQZUX8j/WXVhDa5UxtK5D5PMo9wnEjNEM1QYHpK12IsYfGPMWIdm96NdMa7NFLJpQmabDJVpind6NDuAuKdSqz7nPLKCJiHRhaG2hEMgAooj2QEzHjxB1AKzT34WN5iKqzSyO83dn3WNVltLzDPLIh9+8X6hbZbsRZPpG9acKt0lHnnZ05AQhjTPgJYGEkFE/FQSZXwrw2C9lxOjzJb4YgMnSinhp+aByX7/C6VRHSQVhB6jJLsup3wgKbuO5sef7cDEa3bDcpYMfldp8LImapAuHWiGUo/DgRawomFgMT0J2wE/jHRclA+RmMWCm6VoDu3BSq AHkyNvx0F5YE8I5devYwGenFwDSDFzz79Gw7v/N9AWAkzl4OHqIrLzVaTPD4jiPZnETrtOIFJQYxe+gMedMZp1e25/65uEE9iSNMFjEgOwGoPBo0Y1eqaN9QjlwW5C5OoJnHhkDaDTq0FY2BsUpHRpU3HKwak2lZ6z4ClY/n5pxmJmPNvJu4RfR5Q9dIe1ZYnRYnVc9OjJcF0Rj2BXGdh5NgsE1dBygMA1+jZjMRiADehEg6h6/aFjCBMBQKmeFO4SnO7xBLSZFC/cyoTZYRZdk5//3gra2LkEoPaFuTwOgRkGvg4phmONW4htvvzUn8tzGR/vdB4mxwWBLJEMuFc48ZyHBl+NcGswKbkzZRTqE1Wt5LpH5zqoQfWkA0eBOXttvJ70W0zvTLRHvyMbuL3GB/evj8/wkoRUvMJaRz2CCbzU3EQJ/8eBrz652e+4aF3fI/VZERUxVcMXe29issGqsyE9PdpocegEXBVNQnzymJrp4c4T0TQ9EdrQtATV8pIq75TE4FGaPIMBiJbQbCr6x3I1jGZUVL347L4NThiXopLwZF9ozQhR6op5M8XMT5EA41RSuj9rvzWziyIGM+mEmEr0cekSShnvDg== Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id a24-20020a170906671800b00a3c09428362si2527803ejp.653.2024.02.14.14.07.21; Wed, 14 Feb 2024 14:07:22 -0800 (PST) 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=@niedermayer.cc header.s=gm1 header.b=QjYFz7if; 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 48E2C68D22C; Thu, 15 Feb 2024 00:06:45 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from relay3-d.mail.gandi.net (relay3-d.mail.gandi.net [217.70.183.195]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C496D68D21A for ; Thu, 15 Feb 2024 00:06:35 +0200 (EET) Received: by mail.gandi.net (Postfix) with ESMTPSA id 2EAD160005 for ; Wed, 14 Feb 2024 22:06:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=niedermayer.cc; s=gm1; t=1707948395; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:in-reply-to:in-reply-to:references:references; bh=wcZg8tBg3gilefeDM5lKpJtszLq0SAgwVbf/F+LMuKY=; b=QjYFz7if3dLYfO2qyPv1bPUSxMaoRknZMS+GvZgfluA0i08n/zFZ8l3OC7Qk8ijAACDYMT +ATOCpmguulAKrzO8UMieInV1pBce+klJJ0+F0xvG6n5JuUYaiuu0y2onz9bo9F9uiVSNU JeeE7echBe3sVND+XUm2QNk9mgLw/ZIlqSGWNyXFOoxpHxArCkMlawUptCnTAoM1jJqPDU gpdSsjWEYZp3RXhssjGkt6CzGG9B/T53eup6X6EHP0LxI2+p98HRZ9LiT65SxkVbp3SiLK ZW5NYoQLpM0n7I3TdcuEzCPtIrsIPZeN4rhKOtyJXUtgfm3OsbswWuzCQ54G0w== From: Michael Niedermayer To: FFmpeg development discussions and patches Date: Wed, 14 Feb 2024 23:06:29 +0100 Message-Id: <20240214220631.9641-5-michael@niedermayer.cc> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20240214220631.9641-1-michael@niedermayer.cc> References: <20240214220631.9641-1-michael@niedermayer.cc> X-GND-Sasl: michael@niedermayer.cc Subject: [FFmpeg-devel] [PATCH 5/7] swscale/tests/swscale: Allow comparing a subset of cases to a reference file 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 MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: NlvJ149jFi+8 Testing all cases exhaustively is slow Signed-off-by: Michael Niedermayer --- libswscale/tests/swscale.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/libswscale/tests/swscale.c b/libswscale/tests/swscale.c index 07d0af4377e..68434fb7baf 100644 --- a/libswscale/tests/swscale.c +++ b/libswscale/tests/swscale.c @@ -33,6 +33,7 @@ #include "libavutil/opt.h" #include "libavutil/pixdesc.h" #include "libavutil/lfg.h" +#include "libavutil/sfc64.h" #include "libswscale/swscale.h" @@ -56,6 +57,9 @@ static av_always_inline int isALPHA(enum AVPixelFormat pix_fmt) return desc->flags & AV_PIX_FMT_FLAG_ALPHA; } +static double prob = 1; +FFSFC64 prng_state; + static uint64_t getSSD(const uint8_t *src1, const uint8_t *src2, int stride1, int stride2, int w, int h) { @@ -117,6 +121,9 @@ static int doTest(const uint8_t * const ref[4], int refStride[4], int w, int h, uint32_t crc = 0; int res = 0; + if (ff_sfc64_get(&prng_state) > UINT64_MAX * prob) + return 0; + if (cur_srcFormat != srcFormat || cur_srcW != srcW || cur_srcH != srcH) { struct SwsContext *srcContext = NULL; int p; @@ -449,6 +456,8 @@ int main(int argc, char **argv) fprintf(stderr, "invalid pixel format %s\n", argv[i + 1]); return -1; } + } else if (!strcmp(argv[i], "-p")) { + prob = atof(argv[i + 1]); } else { bad_option: fprintf(stderr, "bad option or argument missing (%s)\n", argv[i]); @@ -456,6 +465,8 @@ bad_option: } } + ff_sfc64_init(&prng_state, 0, 0, 0, 12); + sws = sws_getContext(W / 12, H / 12, AV_PIX_FMT_RGB32, W, H, AV_PIX_FMT_YUVA420P, SWS_BILINEAR, NULL, NULL, NULL);