Selur's Little Message Board

Full Version: Question of resize method?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

andrewschen

Crop/Resize -> Resize: I can choose resize method from 1 - bilinear to 10 - bicubic spline, this is simple.

But when I use the same resizer setting in Avisynth/VaporSynth, but different resize method in Crop/Resize -> Resize, the output file size will be different, why is that?

If this is not a bug, then what is the correct way to set it?
When Avisynth&Vapoursynth are not used ffmpeg or mencoder is used for decoding.
When Avisynth is used their implementation of the resizer might slightly differ, also some resizers do not exist in Avisynth in which case an alternative is used. Check the Avisynth Script. You can also explicitly tell Hybrid to use a specific Avisynth Resizer. (some is true for Vapoursynth)

Cu Selur

andrewschen

I checked both AviSynth / VaporSynth scripts in different Crop/Resize -> Resize settings, they seems ok.
But the issue still exists.

So I tested the following cases:



1. Using AviSynth resizer

Crop/Resize -> Resize: 7 - gauss
Avisynth -> Line -> Resizer: spline64
v.s
Crop/Resize -> Resize: 10 - bicubic spline
Avisynth -> Line -> Resizer: spline64

x264 CRF24 720p encode, preset veryslow.

In this case, output file size is different, but the difference is quite small.
Visual quality is .... ok? Since both files look like the result of spline64 resizer.
It's acceptable, but I don't think it's working correctly, since the file size is not the same.



2. Using Vaporsynth resizer

Crop/Resize -> Resize: 7 - gauss
VaporSynth -> Line -> Resizer: fmtconv, spline64
v.s
Crop/Resize -> Resize: 10 - bicubic spline
VaporSynth -> Line -> Resizer: fmtconv, spline64

x264 CRF24 720p encode, preset veryslow.

In this case, output file size is apparently much more different, (gauss+spline64) file is smaller than (bicubic spline+spline64) by about 11~12%. (53MB vs 59MB)
And the visual difference of output files is pretty much like gauss v.s bicubic spline, basically based on the setting of Crop/Resize -> Resize.
It seems like VaporSynth resizer is almost not functioning. (I think It still does....since file size will still a little bit different between files resized by different vaporsynth resizers, so it's working, just not working correctly)
Will look into this evening when I'm home from work.
My guess is that selecting a Vapoursynth/Avisynth resizers does not qualify as a requirement so that Avisynth/Vapoursynth is really used.

Cu Selur
Checked the code only NNEDI3 and Waifu2x resize qualified as a requirement so far.
-> will fix

Quote:In this case, output file size is different, but the difference is quite small.
Output of the video stream will will also have a different size, when:
a. you use mkv as container
b. x264 ' --non-deterministic' is enabled

andrewschen

(08.02.2018, 18:59)Selur Wrote: [ -> ]Checked the code only NNEDI3 and Waifu2x resize qualified as a requirement so far.
-> will fix

Quote:In this case, output file size is different, but the difference is quite small.
Output of the video stream will will also have a different size, when:
a. you use mkv as container
b. x264 ' --non-deterministic' is enabled

Oh, I didn't know about that, thanks for the info.

Tested the dev version you sent me with Avisynth Spline64MT / Vaporsynth fmtconv spline64 resizer, issues was fixed. Thanks! Smile