I'm trying to downscale a video with nearest-neighbour scaling, but the results are very poor.
To try and get to the bottom of it, I created this image which is a repeating pattern of various colours. The expected result is that the output image, when downscaled from 1080p to 360p, is solid green (#00ff00). Or possibly red, if it samples from the top-left instead of the centre.
Instead, the resulting image is green with vertical bars of #25e525 and #44c383, neither of which are present anywhere in the original image.
I've applied various other things to my command, as seen below, but it makes no difference.
ffmpeg -i 1080.png -vf scale=-1:360:flags=neighbor+accurate_rnd:sws_dither=none -pix_fmt rgb24 360.png
Upscaling works fine - it's just downscaling that goes wrong. Any ideas?