Dogway / Avisynth-Scripts

AviSynth+ 3.7.3+ Filters
GNU General Public License v3.0
92 stars 13 forks source link

nnedi3wrap incorrect chroma shift #61

Closed DonCanjas closed 2 years ago

DonCanjas commented 2 years ago

Describe the bug nnedi3wrap doesn't correct the shift properly with (at least) 4:2:0 subsampling. There's a small height shift.

To Reproduce

src = ColorBarsHD().ConvertToYUV420()
wrap = src.nnedi3wrap(xfactor=2, yfactor=2, cshift="z_spline36").ExtractU()
rpow = src.nnedi3_rpow2(rfactor=2, cshift="z_spline36resize").ExtractU()

Interleave(wrap, rpow)

Expected behavior

nnedi3wrap correcting chroma shift the same way as nnedi3_rpow2().

System:

Dogway commented 2 years ago

Thanks, now fixed. Will updload soon as Asd-g just updated NNEDI3CL and I might need to change a few more things.

Dogway commented 2 years ago

Fixed in 9618e1690d3eab765650a0c2ce26f3e86178b206 hopefully.

DonCanjas commented 2 years ago
src = ColorBarsHD()
wrap = src.nnedi3wrap(xfactor=2, yfactor=2, cshift="z_spline36").ExtractY()
rpow = src.nnedi3_rpow2(rfactor=2, cshift="z_spline36resize").ExtractY()

Interleave(wrap, rpow)

Now luma is incorrectly shifted, affecting both yuv and planar rgb formats.

Dogway commented 2 years ago

Yes, no problem. It was using a simple internal scaler when I should use a decoupled one. Now it's passing through ConvertFormat() which does the remaining heavy lifting. Will quality check and upload in a few days.

Dogway commented 2 years ago

Please check now e2df8c16948fdeca28584cbdffcc66242b587b45 and report back if still got issues. You also need to update the TransformsPack packages.