Code:
# Imports
import vapoursynth as vs
core = vs.get_core()
# Loading Plugins
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/SourceFilter/FFMS2/ffms2.dll")
# source: 'D:\Hybrid_test\Gabby_test_uncompressed.avi'
# current color space: RGB24, bit depth: 8, resolution: 720x480, fps: 29.97, color matrix: 470bg, yuv luminance scale: full, scanorder: top field first
# Loading source using FFMS2
clip = core.ffms2.Source(source="D:/Hybrid_test/Gabby_test_uncompressed.avi",cachefile="D:/Hybrid_test/avi_dead22c40d59d410de8a89e396eff6c9_853323747.ffindex",format=vs.RGB24,alpha=False)
# making sure frame rate is set to 29.97
clip = core.std.AssumeFPS(clip=clip, fpsnum=30000, fpsden=1001)
# Setting color range to PC (full) range.
clip = core.std.SetFrameProp(clip=clip, prop="_ColorRange", intval=0)
original = clip
# adjusting color space from RGB24 to YUV444P8 for VsVIVTC of filtered clip
clip = core.resize.Bicubic(clip=clip, format=vs.YUV444P8, matrix_s="470bg", range_s="full")
yv12=core.resize.Bicubic(clip=clip,format=vs.YUV420P8, range_s="full")
# Forcing chroma to False for VFM
clip = core.vivtc.VFM(clip=yv12, clip2=clip, order=0, mode=1, chroma=False)
yv12=core.resize.Bicubic(clip=clip,format=vs.YUV420P8, range_s="full")
# Forcing chroma to False for VDecimate
clip = core.vivtc.VDecimate(clip=yv12, clip2=clip, chroma=False)# new fps: 23.976
# adjusting color space from RGB24 to YUV444P8 for VsVIVTC of original
original = core.resize.Bicubic(clip=original, format=vs.YUV444P8, matrix_s="470bg", range_s="full")
yv12=core.resize.Bicubic(clip=original,format=vs.YUV420P8, range_s="full")
# Forcing chroma to False for VFM
original = core.vivtc.VFM(clip=yv12, clip2=original, order=0, mode=1, chroma=False)
yv12=core.resize.Bicubic(clip=original,format=vs.YUV420P8, range_s="full")
# Forcing chroma to False for VDecimate
original = core.vivtc.VDecimate(clip=yv12, clip2=original, chroma=False)# new fps: 19.1808
# adjusting for FilterView
if (original.format.id != clip.format.id):
if (original.format.color_family == vs.RGB and clip.format.color_family != vs.RGB):
original = core.resize.Bicubic(clip=original, format=clip.format.id, matrix_s="470bg", range_s="full")
elif (original.format.color_family == clip.format.color_family):
original = core.resize.Bicubic(clip=original, format=clip.format.id, range_s="full")
else:
original = core.resize.Bicubic(clip=original, format=clip.format.id, matrix_in_s="470bg", range_s="full")
stacked = core.std.StackHorizontal([original,clip])
# set output frame rate to 23.976fps
stacked = core.std.AssumeFPS(clip=stacked, fpsnum=24000, fpsden=1001)
# Output
stacked.set_output()
the script looks fine to me.
I'll probably need a small sample of your source to test myself.
Ps.: I can look at it after work.