14.07.2024, 07:34
During the analysis FFmpeg reports some unknown data in the video header data:
x264 reports: "y4m [error]: bad sequence header magic" which usually indicates some problem with the Vapoursynth script.
Does the Vapoursynth Preview work?
The Vapoursynth script itself seems fine:
One thing you can try, assuming you got a vfw version of the codec installed which the source was captured, is to enable: F"iltering->Vapoursynth->Misc->Source->Prefer AviSource for .avi input". This way Hybrid will use AviSource assuming the right vfw codec is installed.
Cu Selur
Unknown extra header dump: [2] [10] [0] [0] [42] [25] [26] [47] [68] [c9] [a] [9] [b] [b] [c] [9] [d] [9] [e] [9] [f] [8] [10] [9] [d1] [32] [31] [d2] [53] [34] [53] [74] [35] [37] [36] [37] [38] [59] [7a] [38] [37] [38] [79] [3a] [39] [3a] [59] [58] [39] [38] [37] [58] [39] [78] [59] [5a] [98] [79] [3a] [39] [38] [37] [56] [35] [36] [35] [36] [35] [34] [35] [74] [73] [12] [8] [11] [8] [10] [8] [f] [9] [ee] [d] [9] [c] [a] [b] [b] [ea] [c9] [88] [67] [26] [24] [22] [42] [24] [26] [28] [2a] [2b] [2c] [2d] [2e] [2f] [30] [51] [32] [73] [74] [35] [34] [95] [54] [55] [36] [37] [19] [19] [1a] [8c] [19] [10] [58] [39] [38] [37] [38] [76] [75] [14] [a] [93] [72] [31] [50] [2f] [4e] [2c] [2b] [2a] [27] [25] [23] [22] [21] [23] [25] [27] [28] [29] [4b] [2c] [4d] [2e] [4f] [70] [71] [52] [94] [35] [39] [38] [59] [38] [19] [b8] [38] [19] [c] [38] [39] [58] [36] [37] [35] [54] [33] [52] [31] [30] [4f] [2e] [2d] [4c] [2b] [2a] [29] [28] [27] [24] [22] [0]
Does the Vapoursynth Preview work?
The Vapoursynth script itself seems fine:
# Imports
import vapoursynth as vs
# getting Vapoursynth core
import ctypes
import sys
import os
core = vs.core
# Import scripts folder
scriptPath = 'C:/Program Files/Hybrid/64bit/vsscripts'
sys.path.insert(0, os.path.abspath(scriptPath))
# Loading Support Files
Dllref = ctypes.windll.LoadLibrary("C:/Program Files/Hybrid/64bit/vsfilters/Support/libfftw3f-3.dll")
# loading plugins
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/GrainFilter/RemoveGrain/RemoveGrainVS.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/GrainFilter/AddGrain/AddGrain.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/DenoiseFilter/DFTTest/DFTTest.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/DenoiseFilter/FFT3DFilter/fft3dfilter.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/Support/EEDI3m.dll")# vsQTGMC
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/ResizeFilter/nnedi3/vsznedi3.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/Support/libmvtools.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/Support/scenechange.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/Support/fmtconv.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/MiscFilter/MiscFilters/MiscFilters.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/DeinterlaceFilter/Bwdif/Bwdif.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/SourceFilter/LSmashSource/LSMASHSource.dll")
# Import scripts
import havsfunc
import validate
# Source: 'F:\Captures\Uninvited.avi'
# Current color space: YUV422P8, bit depth: 8, resolution: 720x480, frame rate: 29.97fps, scanorder: top field first, yuv luminance scale: limited, matrix: 470bg
# Loading F:\Captures\Uninvited.avi using LWLibavSource
clip = core.lsmas.LWLibavSource(source="F:/Captures/Uninvited.avi", format="YUV422P8", stream_index=0, cache=0, fpsnum=30000, fpsden=1001, prefer_hw=0)
frame = clip.get_frame(0)
# Setting detected color matrix (470bg).
clip = core.std.SetFrameProps(clip=clip, _Matrix=5)
# setting color transfer (170), if it is not set.
if validate.transferIsInvalid(clip):
clip = core.std.SetFrameProps(clip=clip, _Transfer=6)
# setting color primaries info (to 470), if it is not set.
if validate.primariesIsInvalid(clip):
clip = core.std.SetFrameProps(clip=clip, _Primaries=5)
# setting color range to TV (limited) range.
clip = core.std.SetFrameProps(clip=clip, _ColorRange=1)
# making sure frame rate is set to 29.97fps
clip = core.std.AssumeFPS(clip=clip, fpsnum=30000, fpsden=1001)
# making sure the detected scan type is set (detected: top field first)
clip = core.std.SetFrameProps(clip=clip, _FieldBased=2) # tff
# cutting from frame 509 to 164444 - WARNING: This might cause synch issues
clip = core.std.Trim(clip=clip, first=509, last=164444)
# Deinterlacing using QTGMC
clip = havsfunc.QTGMC(Input=clip, Preset="Faster", TFF=True) # new fps: 29.97
# Making sure content is preceived as frame based
clip = core.std.SetFrameProps(clip=clip, _FieldBased=0) # progressive
clip = clip[::2] # selecting previously even frames
clip = core.std.CropRel(clip=clip, left=0, right=18, top=0, bottom=12)# cropping to 702x468
# letterboxing 702x468 to 720x480
clip = core.std.AddBorders(clip=clip, left=9, right=9, top=6, bottom=6)
# set output frame rate to 29.97fps (progressive)
clip = core.std.AssumeFPS(clip=clip, fpsnum=30000, fpsden=1001)
# output
clip.set_output()
Cu Selur
----
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page.
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page.