Yesterday, 20:13
(19.05.2025, 14:54)Selur Wrote: Do:
is faster and works.# replaces frame x +1 with a duplicate of x
def duplicate(clip: vs.VideoNode, x: int) -> vs.VideoNode:
part1 = core.std.Trim(clip, 0, x) # Frames 0 to x (inclusive)
replacement = core.std.Trim(clip, x, x) # Only frame x (duplicate)
part3 = core.std.Trim(clip, x + 2, None) # Frames x+2 to end
return core.std.Splice([part1, replacement, part3], mismatch=True)
return duplicate(clip, 7361)
If you wanted to duplicate 7361 and 7447 you would use:
# replaces frame x +1 with a duplicate of x
def duplicate(clip: vs.VideoNode, x: int) -> vs.VideoNode:
part1 = core.std.Trim(clip, 0, x) # Frames 0 to x (inclusive)
replacement = core.std.Trim(clip, x, x) # Only frame x (duplicate)
part3 = core.std.Trim(clip, x + 2, None) # Frames x+2 to end
return core.std.Splice([part1, replacement, part3], mismatch=True)
clip = duplicate(clip, 7361)
clip = duplicate(clip, 7447)
return clip
Cu Selur
It works great!!! Thank you for helping. A useful tool, on a wish list to be part of Hybrid someday