Selur's Little Message Board
Settings for AVCHD 2.0 Progressive compliant file, playback - Printable Version

+- Selur's Little Message Board (https://forum.selur.net)
+-- Forum: Hybrid - Support (https://forum.selur.net/forum-1.html)
+--- Forum: Problems & Questions (https://forum.selur.net/forum-3.html)
+--- Thread: Settings for AVCHD 2.0 Progressive compliant file, playback (/thread-1755.html)

Pages: 1 2 3 4 5 6 7 8 9 10 11


RE: Settings for AVCHD 2.0 Progressive compliant file, playback - Selur - 07.04.2021

No details, doesn't happen here -> nothing for me to do
If you share a debug output I can look at it and see what happens.

Cu Selur


RE: Settings for AVCHD 2.0 Progressive compliant file, playback - Rokoko33 - 07.04.2021

Debug output is the Log data/lines from "Log" tab?


RE: Settings for AVCHD 2.0 Progressive compliant file, playback - Selur - 07.04.2021

-> Going to bed now.
Read: [INFO] Infos needed to fix&reproduce bugs,..

Cu Selur


RE: Settings for AVCHD 2.0 Progressive compliant file, playback - Rokoko33 - 07.04.2021

Understood, sent HybridDebugOutput file through PM.

I saved Global profile and X264 configuration .xml files, uninstalled version rev 2021.04.06.1, installed a previous version that I used, that worked for me: dev_2021.03.12-19531. Loaded configuration and Global profile .xml files. All good.
Uninstalled dev_2021.03.12-19531, installed rev 2021.04.06.1, loaded conf. global .xml files, same problem.


RE: Settings for AVCHD 2.0 Progressive compliant file, playback - Selur - 08.04.2021

Found the problem:
# Imports
import os
import sys
import ctypes
# Loading Support Files
Dllref = ctypes.windll.LoadLibrary("C:/Program Files/Hybrid/64bit/vsfilters/Support/libfftw3f-3.dll")
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/GrainFilter/AddGrain/AddGrain.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/DenoiseFilter/NEO_FFT3DFilter/neo-fft3d.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/Support/EEDI3.dll")
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/temporalsoften.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/SourceFilter/FFMS2/ffms2.dll")
# Import scripts
import havsfunc
# source: 'C:\Users\astraj\Desktop\VHS DV avi convert\16_1.00.avi'
# current color space: YUV422P8, bit depth: 8, resolution: 720x576, fps: 25, color matrix: 470bg, yuv luminance scale: limited, scanorder: top field first
# Loading source using FFMS2
clip = core.ffms2.Source(source="C:/Users/astraj/Desktop/VHS DV avi convert/16_1.00.avi",cachefile="C:/From Hybrid/2021-04-07@14_52_32_2110.ffindex",format=vs.YUV422P8,alpha=False)
# 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=clip, fpsnum=25, fpsden=1)
# Setting color range to TV (limited) range.
clip = core.std.SetFrameProp(clip=clip, prop="_ColorRange", intval=1)
# setting field order to what QTGMC should assume (top field first)
clip = core.std.SetFrameProp(clip=clip, prop="_FieldBased", intval=2)
# Deinterlacing using QTGMC
havsfunc.QTGMC(Input=clip, Preset="Faster", TFF=True) # new fps: 50
# make sure content is preceived as frame based
clip = core.std.SetFieldBased(clip, 0)
# ColorMatrix: adjusting color matrix from 470bg to 709
# adjusting luma range to 'limited' due to post clipping
clip = core.resize.Bicubic(clip=clip, matrix_in_s="470bg", matrix_s="709", range_in=0, range=0)
# cropping the video to 704x564
clip = core.std.CropRel(clip=clip, left=8, right=8, top=0, bottom=12)
clip = core.fmtc.resample(clip=clip, kernel="spline16", w=1440, h=1080, interlaced=False, interlacedd=False)
# letterboxing 1440x1080 to 1920x1080
clip = core.std.AddBorders(clip=clip, left=240, right=240, top=0, bottom=0)
# adjusting output color from: YUV422P16 to YUV420P8 for x264Model (i420@8)
clip = core.resize.Bicubic(clip=clip, format=vs.YUV420P8, range_s="limited")
# set output frame rate to 50.000fps
clip = core.std.AssumeFPS(clip=clip, fpsnum=50, fpsden=1)
# Output
clip.set_output()
There's a bug in the Vapoursynth script creation.
havsfunc.QTGMC(Input=clip, Preset="Faster", TFF=True) # new fps: 50
(this results in QTGMC not taking into account)
should be:
clip = havsfunc.QTGMC(Input=clip, Preset="Faster", TFF=True) # new fps: 50
-> will fix today after work.

Cu Selur


RE: Settings for AVCHD 2.0 Progressive compliant file, playback - Selur - 08.04.2021

Okay, found the issue. I overlooked some legacy code in case QTGMC was used in Bob-mode.
-> fixed it locally, will send you a link to a new dev version via pm in ~30min

Cu Selur


RE: Settings for AVCHD 2.0 Progressive compliant file, playback - Rokoko33 - 08.04.2021

Tested. Crashes right after starting. Sent Debug file through PM.


RE: Settings for AVCHD 2.0 Progressive compliant file, playback - Selur - 08.04.2021

Ah damn, added it twice now:
clip = havsfunc.QTGMC(Input=clip, Preset="Faster", TFF=True)havsfunc.QTGMC(Input=clip, Preset="Faster", TFF=True) # new fps: 50
will report back in a few minutes.

Cu Selur


RE: Settings for AVCHD 2.0 Progressive compliant file, playback - Rokoko33 - 08.04.2021

It works now. Thanks.


RE: Settings for AVCHD 2.0 Progressive compliant file, playback - Rokoko33 - 09.04.2021

Speaking about QTGMC Bob-mode, I am curious if I do the deinterlacing correctly.
For 25i source I am enabling Bob to get 50p. Should it be more wise Not to enable QTGMC's Bob-mode but instead to use one of Frame Interpolation methods Vapoursynth's Interframe/SVP or MVTools FPS and interpolate to 50fps?
Or I am just telling a nonsense Smile