tests/checkasm/sw_ops: remove redundant filter tests

Most of these filters don't test anything meaningfully different relative to
each other; the only filters that really have special significant are POINT
(for now) and maybe BILINEAR down the line.

Apart from that, SINC, combined with the src size loop, already tests both
extreme cases (large and small filters), with large, oscillating unwindonwed
weights.

The other filters are not adding anything of substance to this, while massively
slowing down the runtime of this test. We can, of course, change this if the
backends ever get more nuanced handling.

checkasm: all 855 tests passed (down from 1575)

Signed-off-by: Niklas Haas <git@haasn.dev>
This commit is contained in:
Niklas Haas
2026-04-12 11:59:33 +02:00
committed by Niklas Haas
parent 91582f7287
commit 026a6a3101

View File

@@ -828,12 +828,17 @@ static void check_filter(void)
.scaler_params = { SWS_PARAM_DEFAULT, SWS_PARAM_DEFAULT },
};
const SwsScaler scalers[] = {
SWS_SCALE_POINT,
SWS_SCALE_SINC,
};
SwsFilterWeights *filter;
for (SwsPixelType t = U8; t < SWS_PIXEL_TYPE_NB; t++) {
const char *type = ff_sws_pixel_type_name(t);
for (SwsScaler scaler = SWS_SCALE_AUTO + 1; scaler < SWS_SCALE_NB; scaler++) {
params.scaler = scaler;
for (int s = 0; s < FF_ARRAY_ELEMS(scalers); s++) {
params.scaler = scalers[s];
params.dst_size = LINES;
for (int h = 1; h <= LINES; h += h) {
params.src_size = h;