detail_mask = flt.detail_mask(cwarp, brz=(1800, 3500)) deband = vdf.deband.dumb3kdb(cwarp, threshold=32, grain=16) deband_masked = core.std.MaskedMerge(deband, cwarp, detail_mask) grain: vs.VideoNode = adptvgrnMod(deband_masked, 0.2, luma_scaling=10, size=1.35, static=True, grain_chroma=False) return grain if __name__ == '__main__': FILTERED = filterchain() enc.Encoder(JP_BD, FILTERED).run(clean_up=True) # type: ignore elif __name__ == '__vapoursynth__': FILTERED = filterchain() if not isinstance(FILTERED, vs.VideoNode): raise ImportError( f"Input clip has multiple output nodes ({len(FILTERED)})! Please output just 1 clip" ) else: enc.dither_down(FILTERED).set_output(0) else: JP_BD.clip_cut.std.SetFrameProp('node', intval=0).set_output(0) FILTERED = filterchain() if not isinstance(FILTERED, vs.VideoNode): for i, clip_filtered in enumerate(FILTERED, start=1): clip_filtered.std.SetFrameProp('node', intval=i).set_output(i) else:
from vardefunc.deband import dumb3kdb from vsutil import depth src: vs.VideoNode = pre_freeze() src = depth(src, 16) deband = dumb3kdb(src, radius=16, threshold=30, grain=16) grain: vs.VideoNode = core.grain.Add(deband, 0.15) return grain if __name__ == '__main__': FILTERED = filterchain() if not make_wraw else wraw_filterchain() enc.Encoder(JP_clip, FILTERED).run(wraw=make_wraw, make_comp=False, clean_up=True, ep_num=EP_NUM) # type: ignore elif __name__ == '__vapoursynth__': FILTERED = filterchain() if not isinstance(FILTERED, vs.VideoNode): for i, CLIP_FILTERED in enumerate(FILTERED, start=1): CLIP_FILTERED.set_output(i) else: FILTERED.set_output(1) else: JP_clip.clip_cut.set_output(0) FILTERED = filterchain() if not make_wraw else wraw_filterchain() if not isinstance(FILTERED, vs.VideoNode): for i, clip_filtered in enumerate(FILTERED, start=1): if clip_filtered: clip_filtered.set_output(i)
# Fixing chroma cshift = core.resize.Bicubic(decs, chromaloc_in=1, chromaloc=0) cwarp = WarpFixChromaBlend(cshift, thresh=88, blur=3, depth=6) # Regular debanding + graining detail_mask = flt.detail_mask(cwarp, brz=(1800, 3500)) deband = vdf.deband.dumb3kdb(cwarp, threshold=32, grain=16) deband_masked = core.std.MaskedMerge(deband, cwarp, detail_mask) grain: vs.VideoNode = adptvgrnMod(deband_masked, 0.2, luma_scaling=10, size=1.35, static=True, grain_chroma=False) return grain if __name__ == '__main__': FILTERED = filterchain() enc.Encoder(JP_BD, FILTERED, CHAPTERS, CHAP_NAMES).run(clean_up=True) # type: ignore elif __name__ == '__vapoursynth__': FILTERED = filterchain() if not isinstance(FILTERED, vs.VideoNode): raise ImportError( f"Input clip has multiple output nodes ({len(FILTERED)})! Please output just 1 clip" ) else: enc.dither_down(FILTERED).set_output(0) else: JP_BD.clip_cut.std.SetFrameProp('node', intval=0).set_output(0) FILTERED = filterchain() if not isinstance(FILTERED, vs.VideoNode): for i, clip_filtered in enumerate(FILTERED, start=1): clip_filtered.std.SetFrameProp('node', intval=i).set_output(i) else:
deband = dbs.dumb3kdb(dehalo, threshold=[16, 12]) grain: vs.VideoNode = adptvgrnMod(deband, strength=0.15, size=1.15, sharp=70, grain_chroma=False, static=False, seed=42069, luma_scaling=10) return grain if __name__ == '__main__': enc.Encoder(JP_BD, filterchain()).run(clean_up=True) # type: ignore elif __name__ == '__vapoursynth__': FILTERED = filterchain() if not isinstance(FILTERED, vs.VideoNode): raise ImportError( f"Input clip has multiple output nodes ({len(FILTERED)})! Please output a single clip" ) else: enc.dither_down(FILTERED).set_output(0) else: JP_BD.clip_cut.std.SetFrameProp('node', intval=0).set_output(0) FILTERED = filterchain() if not isinstance(FILTERED, vs.VideoNode): for i, clip_filtered in enumerate(FILTERED, start=1): clip_filtered.std.SetFrameProp('node', intval=i).set_output(i) else: