20.08.2026, 19:05
Yes it fixes the issues.
There's another thing: The "yuv420 chroma location" setting in vapoursynth, sometimes it isn't applied correctly?
for example:
source yuv420p8
yuv420 chroma location left in VS
Filters: SMDegrain (Gimmick YUV444P16) -> KNLMeansCL(plane RGB)
output yuv420p10
result:
I think chromaloc=0 should be in the last line?
There's another thing: The "yuv420 chroma location" setting in vapoursynth, sometimes it isn't applied correctly?
for example:
source yuv420p8
yuv420 chroma location left in VS
Filters: SMDegrain (Gimmick YUV444P16) -> KNLMeansCL(plane RGB)
output yuv420p10
result:
# Adjusting color sampling to YUV444P16 for vsSMDegrainGimmick
clip = core.resize.Bicubic(clip=clip, format=vs.YUV444P16, chromaloc=0)
# removing grain using SMDegrain
clip = smdegrain.SMDegrain(clip, tr=1, interlaced=False)
# adjusting color space from YUV444P16 to RGB48 for vsKNLMeansCL
clip = core.resize.Bicubic(clip=clip, format=vs.RGB48, matrix_in_s="709", range_in_s="limited", range_s="full")
# denoising using KNLMeansCL
clip = core.knlm.KNLMeansCL(clip, channels="RGB", device_id=0)
# adjusting output color from RGB48 to YUV420P10 for SvtAv1Model
clip = core.resize.Bicubic(clip=clip, format=vs.YUV420P10, matrix_s="709", range_in_s="full", range_s="limited", dither_type="error_diffusion")I think chromaloc=0 should be in the last line?

