I've been using Resize8 for a long time as it corrects the slight chroma shift introduced by Avisynth's resizers. It also includes (optional) ringing repair. Different resizing methods can be used to resize the luma and chroma. The defaults remain the same - "Lanczos4" for luma upscaling, "Lanczos" for chroma upscaling, and "Spline36" for both luma and chroma downscaling, but there's now small functions at the end of the script that can be modified to change the default resizing method(s).
Resize8 Mod 2022-09-23.zip
The default output should be exactly the same as the original Resize8, but there's quite a few changes.
--- There's a help file of sorts.
--- All AviSynth+ color spaces and bitdepths are supported.
--- Any resizer with the same arguments for cropping as the native AviSynth resizers can be used.
--- The Jinc, ResampleMT and SplineResize plugins are added as "known" resizers.
--- The Resize8_Separate() function has been removed, but it's functionality is retained via
an additional Resize8 argument "separate", so Resize8(separate=true) can be used instead.
--- New arguments, "RStr" and "RStr_c", for specifying named arguments as strings. They can be used
instead of the a1 and a2 arguments for "known" resizers.
Resize8(1280,720, kernel="Bicubic", RStr="b=0.5,c=0.5")
Resize8(1280,720, kernel="Spline36ResizeMT", RStr="prefetch=4, threads=2")
--- New "show" argument
show=true bypasses the resizing stage and opens a blank clip to display the full resizing strings
as subtitles, as well as some other basic info. It might be useful if there's problems using the
"RStr" arguments, or just to confirm the function is behaving as expected.
--- Resize8 will attempt to use the the ResampleMT plugin for it's default resizing, but if it's not
loaded it will use the native AviSynth resizers instead.
--- When specifying a luma resizer with the kernel argument, the same kernel is now
automatically used for chroma, unless a different chroma resizer is specified with kernel_c.
Likewise, the "_c" arguments now default to the same values as their non "_c" counterparts,
but only when the same kernel is used for both luma and chroma (when kernel = kernel_c).
--- Adaptive ringing repair now works when downscaling, not just upscaling, but it's disabled
for downscaling by default. It's also disabled for all "unknown" resizers by default.
--- For RGBA, the luma kernel is applied to the R-G-B-A planes, except when a chroma kernel is specified
or the default kernels are used, in which case the chroma kernel is used for the alpha plane.
For YUVA, the luma kernel is applied to the Y-U-V-A planes, except when a chroma kernel is specified
or the default kernels are used, in which case the chroma kernel is used for the U-V planes.
--- The "alpha" argument behaves a little differently.
If the source has no alpha plane and alpha=true, one will be added to the output when possible.
The defaults for alpha are true when an alpha plane exists, and false when it doesn't.
--- Added some simple, one line functions to the end of the Resize8 script. They can easily be modified
to change the default resizing kernels and set default resizer strings.
+ Reply to Thread
Results 1 to 4 of 4
New version dated 2021-09-07 in the opening post.
Resize8 is supposed to fall back to using the internal Avisynth resizers for it's default resizing instead of the MT resizers if the ResampleMT plugin isn't loaded. Instead it was producing an error message unless a non-MT resizer was specified manually. That's fixed now. The default resizing methods haven't changed.
New version dated 2022-09-23 in the opening post with a minor bug fix.
An alpha plane wasn't always being added when it should have been.