01.07.2020, 16:59
Can't reproduce this here.
Looking at the debug output,...
Sadly the debug output does not contain the analysis of the source or the job creation.
I see that Hybrid assumes that the input has 4838 but x264 encodes way more frames.
(Hybrid adjusts the frame count to 11600 frames due to Interframe usage.)
Which explains why Hybrid shows a progress over 100%, but not why it is that much 'off' from the actual frame count.
the encoding call:
and the Vapoursynth script:
seem fine.
My current speculation is that:
1. the source if vfr
2. Hybrid adjusts the frame count to the number of time codes found in the source
3. the source is broken in a way that the time code count is way lower than the frame count.
Problem with that speculation is, is that this should have the same effect independent whether Avisynth or Vapoursynth is used.
-> without more details, that is all I can say.
Cu Selur
Looking at the debug output,...
Sadly the debug output does not contain the analysis of the source or the job creation.
I see that Hybrid assumes that the input has 4838 but x264 encodes way more frames.
(Hybrid adjusts the frame count to 11600 frames due to Interframe usage.)
Which explains why Hybrid shows a progress over 100%, but not why it is that much 'off' from the actual frame count.
the encoding call:
"C:\Program Files\Hybrid\64bit\Vapoursynth\vspipe.exe" "C:\Users\Administrator\AppData\Local\Temp\encodingTempSynthSkript_2020-06-30@20_01_22_2010.vpy" - --y4m | "C:\Program Files\Hybrid\64bit\x264.exe" --preset veryslow --crf 18.00 --profile high --level 4.1 --sync-lookahead 12 --vbv-maxrate 62500 --vbv-bufsize 78125 --sar 1:1 --non-deterministic --range tv --colormatrix bt470bg --demuxer y4m --input-range tv --fps 60000/1001 --output-depth 8 --output "C:\Users\ADMINI~1\AppData\Local\Temp\2020-06-30@20_01_22_2010_02.264" -
# Imports
import os
import sys
import vapoursynth as vs
core = vs.get_core()
# Import scripts folder
scriptPath = 'C:/Program Files/Hybrid/64bit/vsscripts'
sys.path.append(os.path.abspath(scriptPath))
# Loading Plugins
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/FrameFilter/Interframe/svpflow2_vs64.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/FrameFilter/Interframe/svpflow1_vs64.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/SourceFilter/LSmashSource/vslsmashsource.dll")
# Import scripts
import havsfunc
# input color space: YUV420P8, bit depth: 8, resolution: 656x480, fps: 25
# Loading E:\USER\fin\Test\Test.mp4 using LibavSMASHSource
clip = core.lsmas.LibavSMASHSource(source="E:/USER/fin/Test/Test.mp4",fpsnum=25)
# making sure input color matrix is set as 470bg
clip = core.resize.Point(clip, matrix_in_s="470bg",range_s="limited")
# making sure frame rate is set to 25
clip = core.std.AssumeFPS(clip, fpsnum=25, fpsden=1)
# Setting color range to TV (limited) range.
clip = core.std.SetFrameProp(clip=clip, prop="_ColorRange", intval=1)
# adjusting frame count with Interframe/SVP
clip = havsfunc.InterFrame(clip, Tuning="weak", NewNum=60000, NewDen=1001, OverrideAlgo=23) # new fps: 59.94
# Output
My current speculation is that:
1. the source if vfr
2. Hybrid adjusts the frame count to the number of time codes found in the source
3. the source is broken in a way that the time code count is way lower than the frame count.
Problem with that speculation is, is that this should have the same effect independent whether Avisynth or Vapoursynth is used.
-> without more details, that is all I can say.
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.