zimg icon indicating copy to clipboard operation
zimg copied to clipboard

Feature request: gaussian resize

Open dnjulek opened this issue 2 years ago • 0 comments

Very useful for GaussianBlur with large sigmas:

def gauss_fmtc(src: vs.VideoNode, sigma: float = 2) -> vs.VideoNode:
    wsrc, hsrc = src.width, src.height
    wdown, hdown = round(wsrc/sigma), round(hsrc/sigma)
    src = src.resize.Bilinear(wdown, hdown)
    return src.fmtc.resample(wsrc, hsrc, kernel='gauss', a1=9)

src = core.std.BlankClip(None, 1920, 1080, vs.GRAYS, 10000, keep=True)
gauss_fmtc(src, sigma=50).set_output()

# Output 10000 frames in 7.53 seconds (1328.10 fps)

dnjulek avatar Nov 24 '22 01:11 dnjulek